Skip to page content

Courses

  • Fundamentals of Computer Science and Data (7204)
  • Fundamentals of Computer Science and Data1 (7214)
  • Introduction To Computer Science (10016)
  • תקציר הקורס:

    Abstract:

    I?nput and output, arithmetics and logical expressions. conditions, loops, f?unctions, lists, sorting and searching and recursions.
  • Data Sructures (10117)
  • תקציר הקורס:

    Abstract:

    Issues of the course:

    Recursion. Recursion as an interdisciplinary thinking paradigm. Analysis of Algorithms and Mathematical Foundations: Growth of functions and Asymptotic notations, Summations, Recurrences: The Substitution, Iteration and Master Methods. Searching for a term in a sorted and an unsorted list, minimum, maximum, merging sorted series, analyzing the complexity of their run times.

     Abstract Data Types, the Concept of Implementation, Data Types in C. Lists: Linked Lists, the Linked List as a Data Structure, Circular and Double Linked Lists. Stacks, Queues, Infix, Postfix, Prefix and Evaluating Expressions.

    Trees: Binary Trees and Traversals, Binary Search Trees and Josephus problem, General Trees, Balanced Trees.

    Heaps and Heapsort, analysis of Heapsort . Sorting and Searching:, Quicksort,

     analysis of Quicksort, Sorting in Linear Time : Bucket sort, Radix sort, Counting sort . Median and Order Statistics, Select algorithm and their applications. Sequential/ Binary/ Tree Searching. Hash Tables.
  • Software Development Tools (10142)
  • תקציר הקורס:

    Abstract:

    Introduction to Linux, Terminal and File Editors, File System Architecture. Introduction to Bash, Basic Commands,

    Batch files, Pipes and redirections, Writing batch scripts in Bash.

    Introduction DevOps software over Linux.

    Using GIT and Docker Containers.
  • Integrative Software Engineering (10143)
  • תקציר הקורס:

    Abstract:

    Developing and refactoring complex software systems require understanding a variety of software aspects:

    Multiprocessing; Utilizing Reactive Programming methodologies and techniques;

    Logging; Maintaining dynamic code modules using Reflection;

    Separating components to layers and utilizing architectural patterns like MVC;

    Unit-testing, Mocking and Integration-testing; Integration to Relational and NoSQL databases;

    Client/Server oriented development using Web-Services;

    Integrating horizontal software aspects using AOP while utilizing software frameworks like Spring.

    Along with learning the above software aspects, students who study this course will implement an Integrated Software System, provide API's to their backend business logic, using a variety of front end applications.

    The system development project requires utilizing knowledge gained throughout the Software Engineering Program, including aspects of Operating Systems, Networking, Database development,

    Object Oriented Design and Development and Software Architecture.

     

    The students will materialize and integrate their knowledge

    and they are required to demonstrate self-learning abilities

    for understanding and utilizing software frameworks, with the guidance of the course teachers.
  • Advance Seminar For Cellular Technology (10221)
  • תקציר הקורס:

    Abstract:

    SDK planning and development is designed to provide programming capabilities to external developers who wish to use a particular service without the need to develop it from scratch.

    Today, many companies provide API integrated SDKs for many uses, for example Facebook provides a software package for implementation in which you can allow your user to connect through his Facebook account on the website or application you have developed and the ability to respond and even share photos from the social network easily.

     

    In this seminar we will design a code package that can be used later on, develop it, integrate API calls, write documentation for developers and of course upload it to the network.
  • Mobile Security (10234)
  • תקציר הקורס:

    Abstract:

    In these classes students will learn to defend themselves and

    their app from external attacks, secure the code and files in it.

    The second part of the course is devoted to learning techniques

    and tools for attacking applications, accessing their source code and resources.
  • Cellular Applications (10357)
  • תקציר הקורס:

    Abstract:

    This course is the basis for developing applicable systems on mobile systems.

    In this course students will learn to combine design and code components,

    assimilate third-party libraries, develop integrated systems,

    user interface, server and internal sensors in smartphones.
  • Introduction To Programming C (10801)
  • תקציר הקורס:

    Abstract:

    learning to think,plan and implement computer program
  • Data Structures And Algorithms (10804)
  • תקציר הקורס:

    Abstract:

    Introduction to algorithms, efficiency and complexity,

    techniques for comparing algorithms

    Data structures: linked lists, stacks and queues,

    binary search trees, heaps, hash tables, graphs

    Each data structure will be discussed from three aspects:

    theoretical internal structure, implementations, and uses for problem-solving

    The sorting problem: comparison based algorithms,

    linear sorting algorithms, and comparison of sorting algorithms

    The class will be taught with an emphasis on the implementation of data structures and algorithms in C.
  • Mobile Application Development (11345)
  • תקציר הקורס:

    Abstract:

    This course is the basis for developing applicable systems on mobile systems. In this course students will learn to combine design and code components, assimilate third-party libraries, develop integrated systems, user interface, server and internal sensors

     in smartphones.