Specialization guide
Computer Science
Academic collegeStart with common courses, then explore related university programs. Study plans vary by university.
10 coursescourses in the specialization guide
6 programsprograms in the university directory
Common courses in this specialization
These courses help you understand what you may study. Check the official university plan before deciding.
Specialization guide
Field training
This course provides the possibility of training in the use of computer tools and their applications in various fields. Training takes place in public or private sector institutions and under the supervision of faculty members in the department. The purpose of field training supervised by practical experiences is for students to accumulate the knowledge, experiences and skills provided during the academic part of the program in a practical environment. Field training is a learning experience for students and a contribution to work at the training site. Field training is expected to provide learning opportunities not available in the classroom
Programming language
This course introduces the basic concepts of programming languages (Java), including: program structure in the Java language, basic data types and operations on them, numerical data, control structures, selection mechanisms, repetition and procedures (recursive procedures and self-calling procedures), passing data to procedures, arrays (one-dimensional and two-dimensional) and their applications such as sorting and searching, basic concepts of object-oriented programming, which includes classes and objects in the Java language.
artificial intelligence
This course provides the general principles of artificial intelligence, including: search strategies, methods of representing knowledge, search structures in the space of cases, hypothetical and attributive logic, search strategies in the space of cases, cognitive search, programming search methods, and generative systems. A number of research and applied fields in artificial intelligence are also covered, including: expert systems, machine learning, intelligent agents, neural networks, and the Prolog programming language.
Data structures
This course covers the basic concepts of data structures, including: abstract data concepts, describing various data structures as abstract data, such as: lists, stacks, queues, dictionaries, and tree structures. Programming these structures in different ways using the object-oriented programming method, the basic concepts of analyzing algorithms based on time and capacity for different applications of data structures. This course also covers the self-recall technique for solving problems and a brief introduction to diagrams
Programming Language Design
This course covers the fundamental concepts in the evolution and design of programming languages, including: the development of major programming languages; syntax and semantics; parsing and construction; identifiers; binding, type checking, and scope; data types, expressions, assignment and control structures.
Computer logic design
This course provides an introduction to the design of computer logic circuits, including: numerical systems and the internal representation of numbers, Boolean expressions and logical functions to express additive and sequential logic circuits, methods of simplifying Boolean functions, designing basic logic circuits (additor, subtractor, comparator, selection circuit, encoder, re-encoder, hoppers, registers, counters, read-only memory, programmable logic arrays). In addition to an introduction to reading and writing memory
Algorithm Design and Analysis
This course covers the fundamental concepts in the design and analysis of algorithms, including: review of abstract data types and data structures; definition of algorithms; classification of functions and the computational complexity of algorithms; techniques for designing and analyzing algorithms, including: divide-and-conquer, greedy methods, search concepts, sorting, trees, graphs, hashing techniques, and combinatorial algorithms and the solvable and unsolvable problems.
Databases
This course provides an introduction to database concepts and database management systems, including: an introduction to the relational database model; relational algebra and relational calculus; Structured Query Language; database design methodologies; entity-relationship model and integrity constraints; conceptual design using functional dependencies, normal forms, normalization and related techniques.
Computer architecture
This course provides an introduction to the software and physical components of computer architecture, including: computer structures and types, instruction set architecture, arithmetic and logic unit, control unit, data transmission lines, instructions and control signals, hierarchical structure of instruction memory, methods for measuring computer performance, improving computer performance using pipeline technology. Connecting and connecting input and output units with the CPU
Operating systems
This course covers the basic concepts of operating systems. Topics covered: Evolution of operating systems (OS), operating system architecture, operating system tasks, including: managing and scheduling processing operations (time-sharing, deadlock), storage management and protection strategies, secondary volume architecture. Distributed systems, I/O management
Related university programs
These programs appear from the university directory when a program name or description matches this specialization.
Explore all universities
| University | Program | Degree | Duration | Status |
|---|
| Aalto University | Computer Science (Aalto Bachelor’s Programme in Science and Technology) | Bachelor's | Check the official programme page | Verified |
| Delft University of Technology | Computer Science and Engineering | Bachelor's | Check the official programme page | Verified |
| ETH Zurich | Bachelor's Programme in Computer Science | Bachelor's | 3 years | Verified |
| KTH Royal Institute of Technology | Computer Science | Master's | See official program page | Verified |
| Massachusetts Institute of Technology | Computer Science and Engineering | Bachelor's | 4 years | Verified |
| Massachusetts Institute of Technology | Computer Science and Engineering | Bachelor's | 4 years | Verified |
Directory data is for exploration. Confirm tuition, duration, and the final study plan on the official university website.