Java SE I Programmer 9 Junior
Java Basics
- Define the scope of variables
- Define the structure of a Java class
- Create executable Java applications with a main method
- Import other Java packages to make them accessible in your code
Working With Java Data Types
- Declare and initialize variables
- Differentiate between object reference variables and primitive variables
- Read or write to object fields
- Explain an Object's Lifecycle (creation, "dereference" and garbage collection)
- Call metho ds on objects
- Manipulate data using the StringBuilder class and its methods
- Creating and manipulating Strings
Using Operators and Decision Constructs
- Use Java operators
- Use parenthesis to override operator precedence
- Test equality between Strings and other objects using == and equals ()
- Create if and if/else constructs
- Use a switch statement
Creating and Using Arrays
- Declare, instantiate, initialize and use a one-dimensional array
- Declare, instantiate, initialize and use multi-dimensional array
- Declare and use an ArrayList
Using Loop Constructs
- Create and use while loops
- Create and use for loops including the enhanced for loop
- Create and use do/while loops
- Compare loop constructs
- Use break and continue
Working with Methods and Encapsulation
- Create methods with arguments and return values
- Apply the static keyword to methods and fields
- Create an overloaded method
- Differentiate between default and user defined constructors
- Create and overload constructors
- Apply access modifiers
- Apply encapsulation principles to a class
- Determine the effect upon object references and primitive values when they are passed into methods that change the values
Working with Inheritance
- Implement inheritance
- Develop code that demonstrates the use of polymorphism
- Differentiate between the type of a reference and the type of an object
- Determine when casting is necessary
- Use super and this to access objects and constructors
- Use abstract classes and interfaces
Handling Exceptions
- Differentiate among checked exceptions, RuntimeExceptions and Errors
- Create a try-catch block and determine how exceptions alter normal program flow
- Describe what Exceptions are used for in Java
- Invoke a method that throws an exception
- Recognize common exception classes and categories
Java SE II Programmer 9 Senior
Java Class Design
- Use access modifiers: private, protected, and public
- Override methods
- Overload constructors and other methods appropriately
- Use the instanceof operator and casting
- Use virtual method invocation
- Override methods from the Object class to i mprove the functionality of your class
- Use package and import statements
Advanced Class Design
- Identify when and how to apply abstract classes
- Construct abstract Java classes and subclasses
- Use the static and final keywords
- Create top-level and nested classes
- Use enumerated types
Object-Oriented Design Principles
- Write code that declares, implements and/or extends interfaces
- Choose between interface inheritance and class inheritance
- Develop code that implements "is-a" and/or "has-a" relationships
- Apply object composition principles
- Design a class using the Singleton design pattern
- Write code to implement the DAO pattern
- Design and create objects using a factory, and use factories from the API
Generics and Collections
- Create a generic class
- Use the diamond syntax to create a collection
- Analyze the interoperability of collections that use raw type and generic types
- Use wrapper classes and autoboxing
- Create and use a List, a Set and a Deque
- Create and use a Map
- Use java.util.Comparator and java.lang.Comparable
- Sort and search arrays and lists
String Processing
- Search, parse and build strings
- Search, parse, and replace strings by using regular expressions, using expression patterns formatching limited to: . (dot), * (star), + (plus), ?, \d, \D, \s, \S, \w, \W, \b. \B, [], ().
- Format strings using the formatting parameters: %b, %c, %d, %f, and %s in format strings.
Exceptions and Assertions
- Use throw and throws statements
- Use the try statement with multi-catch, and finally clauses
- Autoclose resources with a try-with-resources statement
- Create custom exceptions
- Test invariants by using assertions
Java I/O Fundamentals
- Read and write data from the console
- Use streams to read and write files
Java File I/O (NIO.2)
- Use the Path class to operate on file and directory paths
- Use the Files class to check, delete, copy, or move a file or directory
- Read and change file and directory attributes
- Recursively access a directory tree
- Find a file by using the PathMatcher class
- Watch a directory for changes by using WatchService
Building Database Applications with JDBC
- Define the layout of the JDBC API
- Connect to a database by using a JDBC driver
- Update and query a database
- Customize the transaction behavior of JDBC and commit transactions
- Use the JDBC 4.1 RowSetProvider, RowSetFactory, and RowSet interfaces
Threads
- Create and use the Thread class and the Runnable interface
- Manage and control thread lifecycle
- Synchronize thread access to shared data
- Identify potential threading problems
Concurrency
- Use java.util.concurrent collections
- Apply atomic variables and locks
- Use Executors and ThreadPools
- Use the parallel Fork/Join Framework
Localization
- Read and set the locale by using the Locale object
- Build a resource bundle for each local
- Load a resource bundle in an application
- Format text for localization by using NumberFormat and DateFormat
Python Programming Language
Niveli i Python ka 70 ore dhe zhvillohet ne 3 muaj, frekuentimi dy here ne jave nga 3.5 ore.
- Moduli 1
Familjarizon studentin me metodat bazë të ofruara nga Python për formatimin dhe nxjerrjen e të dhënave, së bashku me
llojet kryesore të të dhënave dhe operatorët numerikë, marrëdhëniet e tyre reciproke dhe detyruese. Prezanton konceptin e
variablave dhe konventat me emërtime të ndryshueshme. Prezanton operatorin e caktimit, së bashku me rregullat që rregullojnë
ndërtimin e shprehjeve. Prezanton futjen dhe konvertimin e të dhënave.
- Moduli 2
Familjarizon studentin me konceptet e vlerave booleane, ne menyre qe te krahasoj vlerat e diferencave dhe te kontrolloj rrugen e ekzekutimit duke perdorur instruksionet if- dhe if-else. Prezantimi i perdorimit te loop-eve (while dhe for) dhe si te kontrollojme sjelljen e tyre duke perdorur komandat break dhe continue.Prezanton diferencen ndermjet operacioneve llogjike dhe bitwise.Prezantohet studenti me konceptin e listave dhe procesimin e tyre, duke perfshire perseritjet qe sigurohen nga loop-et, dhe ndarjet ne pjese. Shpjegon idene e vargjeve shumedimensionale.
- Moduli 3
Njeh studentin me përcaktimin dhe përdorimin e funksioneve - arsyetimin, qëllimin, konventat dhe kurthet e tyre. Prezanton konceptin e dhënies së argumenteve në mënyra të ndryshme dhe vendosjen e vlerave të tyre të paracaktuara, së bashku me mekanizmat e kthimit të rezultateve të funksionit. Shpjegon çështjet e fushës së emrit. Prezanton agregate të reja të të dhënave: tuples dhe fjalorë dhe tregojnë rolin e tyre në përpunimin e të dhënave.
- Moduli 4
Prezanton studentin me module Python: arsyetimin, funksionin e tyre, si t'i importoni në mënyra të ndryshme, dhe paraqesin përmbajtjen e disa moduleve standarde të ofruara nga Python. Prezanton mënyrën në të cilën modulet janë bashkuar së bashku për të bërë paketa. Njohin studentin me konceptin e një përjashtimi dhe zbatimin e Python, duke përfshirë edhe udhëzimet e mësipërme, përveç aplikacioneve të saj, dhe udhëzimet për ngritje. Prezanton vargjet dhe metodat e tyre specifike, së bashku me ngjashmëritë dhe dallimet e tyre në krahasim me listat.
- Moduli 5
Prezanton studentin me bazat e OOP (Object Oriented Programming) dhe mënyrën se si ato miratohen në Python, duke treguar dallimin në mes OOP dhe qasjes klasike, procedurale. Prezantoni standardin karakteristikat objektive: trashëgimi, abstragimi, kapsulimi dhe polimorfizmi, së bashku me çështjet specifike të Python-it si shembull vs. variablat e klasës, dhe zbatimi Python i trashëgimisë. Përjashtimet janë diskutuar përsëri në një mënyrë më shumë të detajuar, duke treguar natyrën e tyre objektive. Njohin studentin me gjeneratorët e Python (yield-i udhëzim) dhe mbylljet (fjalia lambda). Demonstoni mjetet që zhvilluesit e Python mund të përdorin për të përpunuar (krijoni, lexoni dhe shkruani) skedarë.
- Moduli 0 (opsional)
Njohin studentin me bazat e programimit kompjuterik: si funksionon kompjuteri, si ekzekutohet programi, si përcaktohet dhe ndërtohet gjuha e programimit, cili është dallimi mes përpilimit dhe interpretimit, atë që Pythonështë, si është vendosur në mesin e gjuhëve të tjera të programimit dhe çfarë dallon versionet e ndryshme të Python. Demostroni një mënyrë të thjeshtë për të shkarkuar, instaluar dhe drejtuar nje mjedis Python në një kompjuter personal.
C Essentials
CLA: Programimi në C mbulon bazat e programimit në gjuhën e programimit C për te hyre ne nivelin e zhvillimit te software. Kursi përfshin
laboratorë bazuar mbi ndertimin e logjikes se zhvillimit te software, kuize dhe vlerësime, te gjitha keto për të mësuar se si të përdorin aftësitë dhe njohuritë e fituara në kurs dhe të ndërveprojnë me disa detyra të programimit në jetën reale dhe situatave te ndryshme.
Deri në fund të kursit, studentët do të jenë në gjendje të: Kuptojnë konceptet baze te programimit. Mësojnë sintaksën dhe semantikën themelore të programimit në C.
Aplikoni aftësitë e programimit duke përdorur hands-on, aktivitetet laboratorike dhe duke shkruar programet tuaja në C.
Zhvillimin e aftësive për ndërtimin e logjikës dhe të menduarit algorithmik.
Ne 25-orëshin, sigurisht të udhëhequr nga mësuesit duke ju përfshirë, handos-on aktivitete praktikë, ushtrime laboratorike për të përforcuar të mësuarit, kuize dhe vlerësimet e kapitujve, si dhe teste para-finale dhe testet e fundit për të matur aftesit tuaja.
Programi C Basic
- Chapter 1 - Introduction to computer programming
- Chapter 2 - Data types, their operations and basics of flow control
- Chapter 3 - Flow control (continued), more data types and computer logic
- Chapter 4 - Aggregating data into arrays
- Chapter 5 - Arrays vs. structures: different aggregates for different purposes
- Chapter 6 - Functions
- Chapter 7 - Connecting to the real world: files and streams
- Chapter 8 - Preprocessor and declarations
Programi C Advanced
- 1 - Introduction
- 2 - Evolution of C from past to eternity
- 3 - Handling variable number of parameters
- 4 - Low-level IO
- 5 - Memory and strings
- 6 - Processes and threads
- 7 - Floats and ints once again
- 8 - Network sockets - the absolute basics
- 9 - Miscellaneous
C++ Essentials
Developed by: C++ Institute
CPA: Programimi ne C++ mëson bazat e programimit në gjuhën C++ , po ashtu si edhe konceptet dhe teknikat fondamentale që përdoren në pragramimin e drejtuar në objekte. Kursi fillon me pjesën universale bazike, pa u mbështetur në konceptet e objekteve dhe më pas gradualisht zgjerohet në koncepte më të avancuara që hasen gjatë përdorimit në përqasjen objektive.
Në përfundim të kursit , studentët do të jenë në gjendjë të:
- Përshkruajnë konceptet universale të programimit
- Përdorin sintaksën, semantikën dhe tipet bazike të gjuhës C++
- Kuptojnë principet e modelit drejtuar në objekte dhe implementimin e tij në gjuhën e C++
- Zgjidhin probleme implementimi specifike duke përdorur libraritë përkatëse të gjuhes C++, njekohesisht jane dhe hapat e pare per Java Basics.
- Kursi prej 25 orësh do të përfshijë aktivitete praktike dhe mbi 100 lloje të ndryshme ushtrimesh në laborator duke mesuar në rreth 16 quize, provime kapitujsh, paraprovim dhe provimin final për të matur aftësinë dhe njohuritë e marra.
Çertifikatat dhe Karriera
Programimi në C++ ndërton aftësitë fondamentale IT të nevojshme për të pasur sukses në punët lidhur me zhvillimin softëarik, inxhinier rrjeti apo administrues rrjeti duke u zgjeruar në Internet e Gjërave(IOT).
Do të mësohen aplikacione bazuar në libraritë përkatëse, aplikacione lidhur me pajisjet e rrjetit, simulatoret si edhe gjithashtu sistemet e remote dhe të menaxhimit të rrjetit. C++ është një ndër gjuhët më të përdorshme të programimit që lidhet me hardware,kontrolloret, komponentet duke rritur ekonomine dixhitale.Ky kurs është një angazhim për konsumatorin neutral.
Kursi ndahet në 9 module:
- Explains the process of installing and using the programming environment.
-
- languages: natural and artificial,
- machine languages
- high-level programming languages
- obtaining the machine code: compilation process
- writing simple programs
- variables
- integer values in real life and in C
- integer literals
-
- floating point values in real life and in C
- float literals
- arithmetic operators
- priority and binding
- post- and pre-incrementation and decrementation
- operators of type op=
- char type and ASCII code
- char literals
- equivalence of int and char data
- comparison operators
- conditional execution and if keyword
- printf() and scanf() functions
-
- conditional execution: the “else” branch
- integer and float types
- conversions
- typecast and its operators
- loops – while, do and for
- controlling the loop execution – break and continue
- logical and bitwise operators
-
- switch: different faces of ‘if’
- arrays (vectors)
- sorting in real life and in a computer memory
- initiators
- pointers
-
- an address, a reference, a dereference and the sizeof operator
- simple pointer and pointer to nothing (NULL)
- & operator
- pointers arithmetic
- pointers vs. arrays: different forms of the same phenomenon
- using strings
- basic functions dedicated to string manipulation
-
- array indexing
- the usage of pointers: perils and disadvantages
- void type
- arrays of arrays and multidimensional arrays
- memory allocation and deallocation: malloc() and free() functions
- arrays of pointers vs. multidimensional arrays
- structures
- declaring, using and initializing structures
- pointers to structures and arrays of structures
- basics of recursive data collections
-
- functions
- how to declare, define and invoke a function
- variables’ scope, local variables and function parameters
- pointers, arrays and structures as function parameters
- function result and return statement
- void as a parameter, pointer and result
- parameterizing the main function
- external function and the extern declarator
- header files and their role
-
- files vs. streams
- header files needed for stream operations
- FILE structure
- opening and closing a stream, open modes, errno variable
- reading and writing to/from a stream
- predefined streams: stdin, stdout and stderr
- stream manipulation: fgetc(), fputc(), fgets() and fputs() functions
- raw input/output: fread() and fwrite() functions
-
- preprocessor
- #include: how to make use of a header file
- #define: simple and parameterized macros, #undef directive
- predefined preprocessor symbols
- macrooperators: # and ##
- conditional compilation: #if and #ifdef directives
- avoiding multiple compilations of the same header files
- scopes of declarations, storage classes
- user–defined types, pointers to functions
- analyzing and creating complex declarations
C++ Advanced
Developed by: C++ Institute
CPP: Advanced Programming in C++ covers intermediate and advanced C++ programming topics for junior-level and specialist-level IT and software development jobs. The course includes hands-on labs, quizzes and assessments to learn how to utilize the skills and knowledge gained on the course and interact with some real-life programming tasks and situations.
The course is broken down into 9 modules:
-
- Types of sequential containers,
- vector, deque, list and their APIs,
- Sequential container adapters – stack, queue and priority queue,
- Dealing with objects as container elements,
- Usage – when to use what.
-
- Types of associative containers,
- set and multiset – behavior and API,
- map and multimap – behavior and API,
- Putting objects into set and map,
- Usage – when to use what.
-
- Definition of a non-modifying algorithm,
- List of non-modifying algorithms: for_each, find, find_if, find_end, find_first_of, adjacent_find, count, count_if, mismatch, equal, search, search_n,
- Examples,
- Container compatibility.
-
- Definition of a modifying algorithm,
- List of modifying algorithms: transform, copy, copy_backward, swap, swap_ranges, iter_swap, replace, fill, fill_n, generate, generate_n, remove, remove_if, unique, unique_copy, reverse, reverse_copy, rotate, partition, stable_partition,
- Examples,
- Container compatibility.
-
- List of sorting algorithms: random_shuffle, sort, stable_partition, lower_bound, upper_bound, equal_range, binary_search,
- Examples,
- Containers compatibility,
- Sorting of objects.