Specialization guide

Computer Science

Academic college

Start 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
UniversityProgramDegreeDurationStatus
Aalto UniversityComputer Science (Aalto Bachelor’s Programme in Science and Technology)Bachelor'sCheck the official programme pageVerified
Delft University of TechnologyComputer Science and EngineeringBachelor'sCheck the official programme pageVerified
ETH ZurichBachelor's Programme in Computer ScienceBachelor's3 yearsVerified
KTH Royal Institute of TechnologyComputer ScienceMaster'sSee official program pageVerified
Massachusetts Institute of TechnologyComputer Science and EngineeringBachelor's4 yearsVerified
Massachusetts Institute of TechnologyComputer Science and EngineeringBachelor's4 yearsVerified
Directory data is for exploration. Confirm tuition, duration, and the final study plan on the official university website.