Alegerea unei noi cariere este un lucru emoționant, dar poate fi și extrem de stresant. Există costul instruirii, investiția de timp și muncă grea, griji cu privire la găsirea efectivă a unui loc de muncă.
Aceasta este o decizie importantă pentru mulți oameni, indiferent dacă ești proaspăt ieșit din liceu sau cauți o nouă direcție în carieră. Nimeni nu vrea să ajungă într-un post pentru care nu este potrivit sau într-un domeniu în care nimeni nu angajează.
Acest program este pentru tine, dacă simți că jobul pe care îl ai în prezent nu îți mai aduce satisfacții profesionale și ai nevoie de o schimbare majoră în carieră. Programul se adresează tuturor persoanelor care doresc să pășească pe drumul reconversiei profesionale în IT, cu orientare spre domeniul programării.
.Net/C# este un limbaj de programare modern, general, orientat pe obiecte, proiectat în jurul infrastructurii de limbaj comun. Un C# Developer este capabil să gestioneze multe aspecte ale dezvoltării unei aplicații, însă nu se limitează doar la performanță, capabilitate, securitate, testare și multe altele.
Dezvoltatorii .Net/C# pot dezvolta aplicații moderne care rulează pe computere desktop sau chiar procese sofisticate de back-end care alimentează aplicații web moderne.
• Ajută la menținerea calității, organizării și automatizării codului;
• Asigură cea mai bună performanță posibilă, calitatea și receptivitatea aplicațiilor;
• Proiectează, construiește și menține codul C# eficient, reutilizabil și fiabil;
• Traduce scenarii și cazuri de utilizare în aplicații funcționale;
• Identifică blocaje, erori și propune soluții la problemele respective.
Avantajul participării la acest curs este că poți parcurge lecțiile în ritm propriu. Sesiunile înregistrate îți oferă posibilitatea de a relua materialele de câte ori simți că informația mai trebuie sedimentată, astfel încât, la finalul programului de reconversie profesională să apeși butonul #CTRL+N(ew) și să dai startul carierei tale în IT!
Acest program este pentru tine, dacă simți că jobul pe care îl ai în prezent nu îți mai aduce satisfacții profesionale și ai nevoie de o schimbare majoră în carieră. Programul se adresează tuturor persoanelor care doresc să pășească pe drumul reconversiei profesionale în IT, cu orientare spre domeniul programării.
Lesson 1 – Introduction
– What is a program? What’s the purpose of programming? What can we do with .NET?
– What is an IDE? How they make programmers’ life easier
– What is .NET and what is C#?
– Our first program in C# run from the IDE
– C# as a compiled and interpreted language (command line reproduction of the steps our IDE did for us in order to run the showed program)
– Variables. What is a variable?
– Literals: Integer, Floating Point, Boolean, Character and String
– Operators
• Assignment
• Mathematical operators
• Auto Increment and decrement
• Logical operators
• Relational operators
• Bitwise operators (explain how computers “think” in terms of bits and do some conversions from base 2 to 10 and to 16 also)
• Shift Operators
• Ternary if-else operator
• String concatenation operator(+, +=)
• Casting operators
• Special Operators (e.g. instance of)
– Controlling execution: decision instructions, interaction instructions, break command, continue command
– Examples & exercises
Lesson 2 – Code Management
– Version Control
• SVN, Mercurial, Git
• Git Setup
• Github, push your first code into Github
– Comments
• Write inline comments
• Write documentation comments
– Namespaces
• How to organize your code in namespaces
• Special Namespaces inside a C# program
– Run a C# program
• Normal mode
• Debugging mode
• Run with special arguments
– Examples & exercises
Lesson 3 – Arrays & Strings
– What are they?
– Array length
– Multidimensional Arrays
– Accessing, changing elements of an Array
– Looping through an Array
– Pass an array as a function argument
– Examples with most used methods from Arrays utility class
– Manipulating strings (substring, comparing strings, converting from a char array, etc.)
– Examples & exercises
Lesson 4 – Functions
– What is a function and what is its general purpose
– Function parameters, optional parameters, return values
– Writing function guidelines (according to “Clean Code” by Robert C. Martin)
– Local variables lifecycle explained
– Passing primitive variables as parameters to functions
– Pass by value
– Calling functions, Named arguments
– Examples & Exercises
Lesson 5 – Introduction to OOP
– What is OOP, OOP vs Procedural
– What is a class
– What is an object
– Constructor
• Default constructors
• This keyword
• Polymorphism
– Declaring & initializing a class instance
– Memory allocation & the garbage collector
– Instance variables/methods vs static variables/methods
– Static constructor
– Non-static constructor
– C# access modifiers
– Examples & Exercises
Lesson 6 – Inheritance, abstract classes, interfaces
– Inheritance explained
– Overriding methods
– Base keyword
– Protected explained
– Sealed keyword
– Abstract classes
– Interfaces
– Interfaces vs abstract classes
– Multiple implementations of interfaces
– Examples & Exercises
Lesson 7 – Inner classes, Object class, null object
– Is/as operators
– Upcasting & downcasting
– Everything is an Object
– Object class explained
– ToString() method purpose iii. Equals() method purpose iv. HashCode() method
– Cloning objects – ICloneable Interface
– Finalizer method
– Null object
– Examples & Exercises
Lesson 8 – Enums, Exception Handling
– Enum explained
– Exceptions hierarchy
– Checked vs Unchecked exceptions
– Try-catch-finally explained
– Throwing exceptions (throw command)
– Treated exceptions locally or delegating them
– Defining our own exceptions
– Examples & Exercises
Lesson 9 – Input/Output Streams, Serialization
– The File class
– Byte Streams
– Character Streams
– Buffered Stream
– Data Streams
– Object Streams
– Serialization
– Examples & Exercises
Lesson 10 – Generics, Collections
– Generic classes
– Generis functions
– Generics naming convention
– Collections with examples of implementations:
– Generic Collections: List, Dictionary<TKey, TValue>, SortedList, Queue, Stack, Hashset
– Non-Generic Collections: ArrayList, SortedList, Stack, Queue, Hashtable
– Examples & Exercises
Lesson 11 – Generics, Collections
– Iterators
– Foreach instruction
– Dictionary type
– Collections algorithms
• Sort
• IComparable interface
• IComparer interface
• BinarySearch
• Reverse
• Min/max
• Swap
• Linq operations on collections: e.g. Find, First, Skip, Take, etc
– Examples & Exercises
Lesson 12 – Threads, Sockets, Tasks (Async Await)
– Running code sequential vs in parallel
– Async Await in .net (C#)
– Creating and starting a thread in C#
• Thread class
• Task class
– Thread lifecycle
– Pausing a thread execution
– Thread joins
– Synchronization and Locks
– Monitor helper class: Wait, Pulse, PulseAll
– Examples & Exercises
Lesson 13 – Threads, Sockets, Tasks (Async Await)
– Atomic Variables
– Volatile keyword
– Immutable objects
– Parallel programming pitfalls
– Client Socket
– Server Socket
– Examples & Exercises
Lesson 14 – Dependency managers, C# database connectivity
– Nuget Package Manager
– Importing multiple projects into your project
– Setting up a connection to SQL Server from C#
– Calling SQL code from C#
• SqlCommand
• SqlDataReader
– Closing C# connection to SQL Server
– Reading query results: ExecuteScalar vs ExecuteReader
Lesson 15 – Entity Framework
– What is Entity Framework?
– DIfferent ORMs
– Lambda Expressions
– Migrations
– Package Manager Console
– EF Code First vs Database First
– Examples & Exercises
Lesson 16 – Anonymous Objects. Delegates, Dependency Injection
– Anonymous Objects examples
– Delegates
– Lambda expressions
– Dependency Injection
– Fixing null: Optional class
– Examples & Exercises
Lesson 17 – MVC, Web API & Code Generation
– MVC (Model View Controller pattern)
– What is a Web API
– HTTP Verbs
– JSON / XML
– Examples & Exercises
Lesson 18 – Unit testing & Clean Code
– Clean Code
• Why is Clean Code Important
• General code writing guidelines
• DRY Principle
• Kiss principle
• Yagni Principle
– Unit Testing
• xUnit
• nUnit
• Unit tests vs Integration Tests
• Using mocking libraries
• Decoupled Code And Unit Tests
Lesson 19 – Project Phase 1
– Preparing a project
Lesson 20 – Project Phase 2
– Consulting and Checking the Project
Lesson 21 – Project Phase 3
– Project finishing up and presentation
Cursurile se desfășoară exclusiv online, în limba română, pe o platformă de învățare dedicată și vor fi urmate în ritmul propriu; nu ești condiționat(ă) de o zi și o oră anume pentru prezența la curs, ci studiezi de oriunde dorești și oricând poți. Noi recomandăm studierea unei lecții pe saptămână.
După promovarea examenului final primești o diplomă de finalizare curs care atestă competențele dobândite. Aceasta poate fi trecută în CV. Diploma este recunoscută de companiile și industria IT. Programul CTRL+N este un program independent de programele inițiate de Ministerul Educației.
De asemenea vei primi și un link pentru activarea unei insigne digitale. Aceasta reprezintă o dovadă oficială a pregătirii tale și poate fi încărcată în profilul de LinkedIn sau distribuită pe alte platforme social media.
Periodic se organizează întâlniri live cu trainerii, de tip Meetup Q&A, pe platforma Cisco Webex; acestea vor fi publicate în calendarul din platforma de învățare în momentul în care, împreună cu trainerul, stabilim data și ora la care vor avea loc. Prezența la aceste întâlniri este opțională.
Toate cursurile CTRL+N sunt construite de la zero și nu necesită cunoștințe anterioare nici din domeniul IT, nici de matematică. De asemenea, nu există limită minimă de studii.
Unul din cele mai importante criterii în recrutare este proiectul pe care îl lucrezi în cadrul cursului. De asemenea și exercițiile propuse de instructor au un rol. Toate acestea vor reprezenta potofoliul tău, având astfel baza pe care vei începe să construiești și să te dezvolți.
Chiar dacă noi nu te vom ajuta activ în găsirea unui job, dacă urmezi sfaturile instructorilor noștri și realizezi proiectul din curs, vei avea șanse mai mari să fii selectat/ă pentru interviu deoarece angajatorul va putea valida cunoștințele dobândite de tine pe parcursul programului.
Curs de reconversie profesională în IT
Alegerea unei noi cariere este un lucru emoționant, dar poate fi și extrem de stresant. Există costul instruirii, investiția de timp și muncă grea, griji cu privire la găsirea efectivă a unui loc de muncă.
Aceasta este o decizie importantă pentru mulți oameni, indiferent dacă ești proaspăt ieșit din liceu sau cauți o nouă direcție în carieră. Nimeni nu vrea să ajungă într-un post pentru care nu este potrivit sau într-un domeniu în care nimeni nu angajează.
Acest program este pentru tine, dacă simți că jobul pe care îl ai în prezent nu îți mai aduce satisfacții profesionale și ai nevoie de o schimbare majoră în carieră. Programul se adresează tuturor persoanelor care doresc să pășească pe drumul reconversiei profesionale în IT, cu orientare spre domeniul programării.
.Net/C# este un limbaj de programare modern, general, orientat pe obiecte, proiectat în jurul infrastructurii de limbaj comun. Un C# Developer este capabil să gestioneze multe aspecte ale dezvoltării unei aplicații, însă nu se limitează doar la performanță, capabilitate, securitate, testare și multe altele.
Dezvoltatorii .Net/C# pot dezvolta aplicații moderne care rulează pe computere desktop sau chiar procese sofisticate de back-end care alimentează aplicații web moderne.
• Ajută la menținerea calității, organizării și automatizării codului;
• Asigură cea mai bună performanță posibilă, calitatea și receptivitatea aplicațiilor;
• Proiectează, construiește și menține codul C# eficient, reutilizabil și fiabil;
• Traduce scenarii și cazuri de utilizare în aplicații funcționale;
• Identifică blocaje, erori și propune soluții la problemele respective.
Avantajul participării la acest curs este că poți parcurge lecțiile în ritm propriu. Sesiunile înregistrate îți oferă posibilitatea de a relua materialele de câte ori simți că informația mai trebuie sedimentată, astfel încât, la finalul programului de reconversie profesională să apeși butonul #CTRL+N(ew) și să dai startul carierei tale în IT!
Acest program este pentru tine, dacă simți că jobul pe care îl ai în prezent nu îți mai aduce satisfacții profesionale și ai nevoie de o schimbare majoră în carieră. Programul se adresează tuturor persoanelor care doresc să pășească pe drumul reconversiei profesionale în IT, cu orientare spre domeniul programării.
Cursurile se desfășoară exclusiv online, în limba română, pe o platformă de învățare dedicată și vor fi urmate în ritmul propriu; nu ești condiționat(ă) de o zi și o oră anume pentru prezența la curs, ci studiezi de oriunde dorești și oricând poți. Noi recomandăm studierea unei lecții pe saptămână.
După promovarea examenului final primești o diplomă de finalizare curs care atestă competențele dobândite. Aceasta poate fi trecută în CV.
Periodic se organizează întâlniri live cu trainerii, de tip Meetup Q&A, pe platforma Cisco Webex; acestea vor fi publicate în calendarul din platforma de învățare în momentul în care, împreună cu trainerul, stabilim data și ora la care vor avea loc. Prezența la aceste întâlniri este opțională.
Toate cursurile CTRL+N sunt construite de la zero și nu necesită cunoștințe anterioare nici din domeniul IT, nici de matematică. De asemenea, nu există limită minimă de studii.
Criteriile de recomandare după finalizarea cursului sunt promovarea examenului final cu minim nota 8 precum și realizarea proiectului aferent cursului ales și a exercițiilor propuse de instructor. Acestea vor reprezenta potofoliul tău, având astfel baza pe care vei începe să construiești și să te dezvolți. În acest fel, angajatorul va putea valida cunoștințele dobândite de tine pe parcursul programului și vei avea șanse mai mari să fii selectat pentru interviu. În plus, îți vom putea face recomandări de joburi deschise din piață, atât de la parteneri și nu numai, ca tu să ai opțiuni multiple la care să poți aplica.