Difference between revisions of "BITL-CS2"
(→OOP) |
|||
(10 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
{{TocRight}} |
|||
Introduction to Computer Science, part 2. |
Introduction to Computer Science, part 2. |
||
The goal of the course is to learn about software development using object oriented programming, functional programming, and relevant data structures and algorithms. The course is using Scala programming language. |
|||
This page is used as a supplemental resource for the course. |
This page is used as a supplemental resource for the course. |
||
= Development tools = |
|||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
== Integrated development environment == |
== Integrated development environment == |
||
This course suggests using IntelliJ IDEA for development in Scala. |
This course suggests using IntelliJ IDEA for development in Scala. |
||
* [https://www.jetbrains.com/idea/ IntelliJ IDEA] integrated development environment |
* [https://www.jetbrains.com/idea/ IntelliJ IDEA] integrated development environment |
||
** [https://www.jetbrains.com/idea/download/ IntelliJ IDEA download link], community edition. |
** [https://www.jetbrains.com/idea/download/ IntelliJ IDEA download link], community edition. |
||
== Git and GitHub version control system and project repository == |
|||
The students will use Git and GitHup as software code repositories. The assignments are submitted via GitHub Education. |
|||
[https://git-scm.com/ GIT] version control system |
|||
[https://github.com/ GitHub] |
|||
[https://rogerdudler.github.io/git-guide/ A simpleguide for getting started with git] - no deep *hit |
|||
== Build systems, Maven == |
== Build systems, Maven == |
||
* [https://www.baeldung.com/ant-maven-gradle Comparison of And, Maven, and Gradle] build systems. |
* [https://www.baeldung.com/ant-maven-gradle Comparison of And, Maven, and Gradle] build systems. |
||
== Scala == |
|||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
* [https://docs.scala-lang.org/tour/packages-and-imports.html Packages and imports] |
|||
== Data types == |
|||
* [https://docs.scala-lang.org/tutorials/FAQ/collections.html Data types in Scala] |
|||
* [https://en.wikipedia.org/wiki/Double-precision_floating-point_format About Double precision data types] in general |
|||
== OOP == |
|||
* [https://stackify.com/oops-concepts-in-java/ OOP Concepts in Java] - at Stackify |
|||
* [https://www.baeldung.com/scala/oop-intro OOP intro in Scala] - at Baeldung |
|||
Polymorphism |
|||
* [https://www.baeldung.com/scala/polymorphism Polymorphism in Scala] - at Baeldung |
|||
* [https://www.geeksforgeeks.org/scala-polymorphism/ Polymorphism in Scala] - at Geeksforgeeks |
|||
* [https://www.geeksforgeeks.org/polymorphism-in-python/ Polymorphism in Python] - at Geeksforgeeks |
|||
== MVC == |
|||
* [https://www.youtube.com/watch?v=o_TH-Y78tt4&t=1667s The Principles of Clean Architecture by Uncle Bob Martin] |
Latest revision as of 08:59, 30 January 2023
Introduction to Computer Science, part 2.
The goal of the course is to learn about software development using object oriented programming, functional programming, and relevant data structures and algorithms. The course is using Scala programming language.
This page is used as a supplemental resource for the course.
Development tools
Integrated development environment
This course suggests using IntelliJ IDEA for development in Scala.
- IntelliJ IDEA integrated development environment
- IntelliJ IDEA download link, community edition.
Git and GitHub version control system and project repository
The students will use Git and GitHup as software code repositories. The assignments are submitted via GitHub Education. GIT version control system GitHub
A simpleguide for getting started with git - no deep *hit
Build systems, Maven
- Comparison of And, Maven, and Gradle build systems.
Scala
Introduction to Scala
- Scala programming language
- About Scala at Geeks for Geeks.
- "Scala is a general-purpose, high-level, multi-paradigm programming language. It is a pure object-oriented programming anguage which also provides support to the functional programming approach. Scala programs can convert to bytecodes and can un on the JVM (Java Virtual Machine)..."
Data types
OOP
- OOP Concepts in Java - at Stackify
- OOP intro in Scala - at Baeldung
Polymorphism
- Polymorphism in Scala - at Baeldung
- Polymorphism in Scala - at Geeksforgeeks
- Polymorphism in Python - at Geeksforgeeks