2. The 4 technology topics in the course
Artificial Intelligence (AI)
Algorithms
Agile
Programming Languages
An artificial intelligence (AI) project utilizes programming languages such as Python, Java, and C
to develop algorithms for solving specific real-world problems. The project can be executed using
agile methodology, a method that effectively manages and runs iterations for project success.
3. 3
程式語言 Programming Languages
● A programming language is a formal system designed to instruct a computer. It
consists of a set of instructions that can be used to produce various kinds of output.
Programming languages allow developers to communicate with computers and
create software applications. Examples include Python, Java, C++, and JavaScript.
● 程式語言是一種正式的系統,設計來指導
電腦操作,由一組指令組成,可用於生成
各種類型的輸出。程式語言允許開發人員
與電腦進行通信,創建軟體應用。例子包
括 Python、Java、C++ 和 JavaScript 等。
4. 4
Types of Programming Languages
● 高階語言(High-Level Language):
○ Provide a higher abstraction, closer to human natural language
and easy to use.
○ E.g.: Python, Java, C#, JavaScript, Ruby, Swift
● 中階語言(Middle-Level Language):
○ It has high-level and low-level features and is usually used in the
development of system software.
○ E.g.: C, C++
● 低階語言(Low-Level Language):
○ It is closer to machine code and has finer control over the
hardware, but it is also more complex.
○ E.g.: Assembly Language, Machine Language
High-Level
Language
Middle-Level
Language
Low-Level
Language
Computer Hardware
6. 6
組合語言 (Assembly Language)
● An assembly language is a type of low-level programming language that is intended
to communicate directly with a computer’s hardware. Unlike machine language,
which consists of binary and hexadecimal characters, assembly languages are
designed to be readable by humans.
7. 7
C語言 (C Language)
● The C Language is a high-level, general-purpose programming language developed
by Dennis Ritchie at Bell Labs in the early 1970s. It is widely used for system
programming, embedded systems, and application development due to its
efficiency, portability, and flexibility.
A Brief Introduction to the C Programming Language
8. 8
Java語言 (Java Language)
● The Java Language is a high-performance, cross-platform programming language. It
is characterized by its "Write Once, Run Anywhere" design concept, which means
that the code written once can run on different platforms as long as there is a
Java Virtual Machine (JVM).
9. 9
整合開發環境
Integrated Development Environment (IDE)
● An integrated development environment (IDE) is a software application that helps
programmers develop software code efficiently. It increases developer productivity
by combining capabilities such as software editing, building, testing, and packaging
in an easy-to-use application.
○ “If a workman wishes to do a good job, he must first sharpen his tools” (工欲善其事,必先利其器)
○ E.g.: Visual Studio Code (VSCode), PyCharm, Eclipse, IntelliJ IDEA, Xcode, Android Studio, NetBeans,
Sublime Text, Atom, Jupyter Notebook
10. 10
IDE: Jupyter Notebook
● Jupyter Notebook is an open source interactive web application that supports
interactive computing and data visualization in multiple programming languages.
● Features
○ Interactive
○ Visualization
○ Support Markdown
○ Support LaTeX
12. 12
程式語言 Programming Languages
Programming
Languages
Main IDEs Properties
Python PyCharm
Jupyter Notebook
Easy to learn! Widely used in data analysis, AI and Web development fields.
Java Eclipse
IntelliJ IDEA
NetBeans
Cross-platforms! Mainly used in enterprise applications, mobile APPs and large systems.
JavaScript VSCode Mainly used in front-end Web development with dynamic effects.
HTML & CSS VSCode Web development with HTML in structure and CSS in style.
C# VSCode Microsoft released. Mainly used in Windows application, games and enterprise applications.
C++ Code::Blocks The extension of C language. Widely used in games, system programming and performance sensitive
applications.
C Code::Blocks High performance language! Mainly used in system programming and embedded system (嵌入式系統).
Swift Xcode Apple released. Used in iOS APP & macOS applications development.
Kotlin Android Studio Used in Android APP development.
Ruby Simple and powerful. Used in Web development, especially the Ruby on Rails framework.
Go Google released. Focus on performance and readability, suitable for distributed systems (分散式系統).
21. 21
參考資料 References
● Investopedia – Assembly Language
● The Programming Language Guide
● Features of Java
● What is an IDE? Guide to Integrated Development Environment
● Python Integrated Development Environment IDE Software Market
● 在 Jupyter Notebook 中內嵌 Power BI 元件
● Using the Eclipse IDE for Java programming - Tutorial