This Repostory was written while I was studying at Progmatech. Currently under development.
Kursda olduğum müddətdə verilən tapşırıqlar və keçilən dərslərin başlıqlarnı Readme.md > My Lessson hissəsində qeyd etmişəm.Öz araştırmalarimi MyResearch faylını icərsində qeyd etdim . My App bölməsində isə yazıdığım applicationlar göstərlir. Başqa lahiyələrimə baxmaq istəyirsizsə burada qoyduğum link vastəsi ilə GitHub Profilimə gedə bilərsiz...
Information structure
- Lesson(a/b)
- a Week
- b Lesson
My Apps
Calculator App
App Consol üçün yazılmışdır. Heç bir methodan istfadə edilməyib. Kod maxsimum sadə yazılmağa çalışlıb.
- Preveiw
- Code Documantation
- App xususiyyətləri
- Consol üçün yazılıb.
- Non-method-dur.
Apteklərdə istfadə edlilən programların sadə versiyasıdır. Medicines create,delete, update və read etmək olur. Medicines-ləri satmaq və ümumi və tək gəlirlərə baxmaq mükündür.
- Preveiw
- Code Documantation
- App xususiyyətləri
- Consol üçün yazılıb.
Month Number App
Ayın nömrəsini daxil edərək hansı fəsili və ay olduğunu görürük.
delegate
-in istfadəsi üçün yazılmışdır.
- Preveiw
- Code Documatation
- App xususiyyətləri
- Consol üçün yazılıb.
switch
istfadə edilib.delegate
istfadə edilib.
Library App
Windows Forms istifadə edilərək sadə kitbxana App yazılmağa çalışılmışdır.Kitabları ələavə edirb sonra onları axtara biliərək. Kitabların xususiyyətləri: Biz burada Kitab əlavə edə və Əlavə Etdiymiz Kitabı axtara bilərik.
- Preveiw
- Code Documatation
- Install Setup
- App xususiyyətləri
- Windows Forms üçün yazılıb.
DataBases
-dən istifadə edilməyib.
Group App
Group
laraStudent
ləri əlavə edirk. Əlavə etdiklirmiz bizə list şəkilində göstərilir.Update
vəDelete
buttonlar vastəsi ilə düzəliş edə və silə bilərik.
- Preveiw
- Code Documatation
- Install Setup
- App xususiyyətləri
- Windows Forms üçün yazılıb.
CRUD
SistemiDataBases
-dən istifadə edilməyib.
People App
Person
barəsindəki datanı saxlayır vədatagridveiw
vast’si ilə bizə datani göstərir.data
ya aiddir:
- Şəkil (İmage)
- Adı və Soyadı (Name and SureName)
- Preveiw
- Code Documatation
- Install Setup
- App xususiyyətləri
- Windows Forms üçün yazılıb.
ComboBox
vastəsi ilə Personlari seçib ona aid bütün datani görmək olur.DataBases
-dən istifadə edilməyib.
Copy File to Path Name File App
Bu program vastəsi ilə istənilən
file
instənilən yerə yerə adini dəyişdirərək kopyalamq olur.Günümüzdə kodlarda istifadəsi üçün file adında boşluqdan istifadə etmək olmaz. Bunu düşünərəkDeveloper-File
əlavə etdim.Bu Check sayəsində kodlarda istifdə edə biləcəyimiz uyğun file name əldə edə bilərik. Boşluqlari aradan qaldırır.
- Preveiw
- Code Documatation
- App xususiyyətləri
- Windows Forms üçün yazılıb.
File
-ım adını dəyişib kopyalamaq olur.File
-ın adını Dəyişdirmədəndə koyalamq olur.Developer-File
sayəsində kodlarda istifadə edə biləcəyimiz uyğun file name əldə edə bilərik.DataBases
-dən istifadə edilməyib.
My DataBase Schemas and Query Code
My Lessons
Lesson(1/1) => CLI languages,For Loop,Switch Statement,Data Types,Stack Value Type,Heap Reference Type and Methods
- Task
- Content
1)5 ədədin orta qiymətinin tapılması algoritmi qurun; 2)Düzbucaqlının sahə və perimetrini tapan algoritmi qurun; 3)Daxil edilən ədədin vurma cədvəlini yazdiran algoritmi qurun; 4)1 le verilmis eded arasinda kvadratlari cemi algoritmini qurun; 5)0 la verilmiş ədəd arasındaki ədədlərin hasili ilə cəminin fərqini hesablayan algoritmi qurun; Hər birini methodlar vasitesile yazin. Ugurlar! :)
- Solution
- Content
- Lesson
- Code
- Documentation
Lesson(1/2) => String vs StringBuilder,Ref & out keyword,Method Overloading,Type Casting,Boxing and Unboxing,String Methods,String Methods 2,Arrays,Duplicate values
- Task
- Content
1)String Substring algorithmini qurun; 2)Reverse algoritmi qurun : input: hello, output: olleh 3)Verilmis sozun palindrome oldugunu yoxlayan algoritm mes:input: ana, output: ana (soldan ve sagdan eyni oxunur) 4)Remove duplicate data algoritmini yazin input: csharpcorner, output: csharpone c azir methodlardan istifade etmeyin)) Meqsed hazir methodlarin algoritmini yazmaqdir Ugurlar! :)
- Solution
- Content
- Lesson
- Code
- Documentation
Lesson(2/1) => Params,Class and Object
- Task
- Content
Student class-i yaradin: Fullname GroupNo Age Student classi ucun GetBirthYear() metodunu yazin.Bu metod Studentin dogum ilini geri qaytarir Student Arrayi yaradin. Qrup nomresini daxil etmekle bir qrupda nece telebenin oxudugunu check eden method yazin.(2ci parametrkimi array daxil edeceksiz) ps:Student yaradilarken butun deyerlerin verilmesi mecburidir
- Solution
- Content
- Lesson
- Code
- Documentation
Lesson(2/2) => Static
- Task
Account - class No - her bir account obyektinin unique nomersidir ve onun necenci yarandigini gosterir Username Password IsUserNameValid() method - username yanlizca digit ve herflerden ibaret ola biler yoxlanisi IsPasswordValid() method-uzunluq 8-25, siferenin icinde en az bir symbol,1 uppurcase letter ve en az bir digit istifade olunmalidir yoxlanisi console readlinedan aldiginiz datani bu methodlarda yoxlayib sonra yeni obyekte menimsedeceksiz... 1.Constructorda name ve password qebul edilsin
- Lesson
- Code
- Documentation
Lesson(3/1) => Array,Non-Generic and Generic
- Task
- Content
1) Aşağıdaki tapşırığı yerinə yetirin: a) Key və value-su string tipində olan Dictionary yaradın. b) İstifadəçidən 10 dəfə iki söz yazılması istənilsin: b.1) Birinci söz ölkə adı. b.2) İkinci söz paytaxt adı. c) Daha sonra istifadəçi ölkə adı yazaraq daxil edilən list-dən paytaxt adını almalıdır. d) Əgər istifadəçi ölkə adı əvəzinə "all" sözü daxil edilərsə, dictionary-də olan bütün ölkə-paytaxlarprint edilsin. e) Nəticəni aldıqdan sonra yeni paytaxt axtarışı edilsin yoxsa proqram bitsin deyə istifadəçidənsoruşulmalıdır və cavaba müvafiq əməliyyat baş verməlidir. Misal üçün: Proqram çalışarkən aşağıdakilər baş verməlidi: Əvvəl belə mesaj çıxır: "Hörmətli istifadəçi! Zəhmət olmasa ölkə adı qeyd edin." Daha sonra ölkə adını yazmaq istənilir. Daha sonra bu mesaj çıxır: "Hörmətli istifadəçi! Zəhmət olmasa ölkəyə aid paytaxt qeyd edin." Paytaxt adını yazmaq istənilir. Bütün bu proses 10 dəfə təkrarlanır və dictionary dolur. Daha sonra istifadəçidən bir ölkə adı yazmaqistənilir: "Hörmətli istifadəçi! Zəhmət olmasa paytaxtını tapmaq istədiyiniz ölkənin adını qeyd edin." İstifadəçi "Azərbaycan" yazarsa dictionary-də həmin key-ə görə search edib, ona uyğun value-nu, yəni"Bakı" sözünü qaytarıb, ekrana print etmək lazımdı. Əgər istifadəçi ölkə adı əvəzinə "all"sözü daxil edilərsə, dictionary-də olan bütün ölkə-paytaxlar print edilsin. Print etdikdən sonra soruşulur: "Yeni paytaxt axtarılsın? Y/N" İstifadəçi "Y" yazarsa yeni axtarış üçün ölkə adı istənilsin, "N" basarsa proqramdan çıxsın. 2) Aşağıdaki tapşırığı yerinə yetirin: a) string tipli Queue list-i yaradın. b) İçini müxtəlif mesajlarla doldurun. c) Əgər məlumat 10 item-dən çox olarsa, növbədə (queue-list) sonuncu olan elementi boşaldıb, yerinəyeni məlumatı salın. 3) Aşağıdaki tapşırığı yerinə yetirin: a) int tipində List yaradın. b) İstifadəçi 10 müxtəlif ədədlərlə listi doldursun. c) Daha sonra list-in son 5 elementi ilə ilk 5 elementinin yerlərini dəyişdirin. 4) Aşağıdaki tapşırığı yerinə yetirin: a) int tipli elə bir kolleksiya yaradın ki, içində bütün item-lər unique olsun (təkrarlanma olmasın) vəsort edilmiş vəziyyətdə olsun. b) Daha sonra içini müxtəlif ədədlərlə doldurun. (Console-dan) c) Nəticəni ekrana çap edin.
- Solution
- Content
- Lesson
- Code
- Documentation
Lesson(4/1) => OOP (Object Oriented Programming)
- Include
- Task
- Content
Asagidaki metodlari olan Account abstract classi yaradirsiniz - PasswordChecker() - parameter oalraq string sifreni qebul edir (abstract metod) - ShowInfo() - virtual metod Asagidaki memberlerden ibaret User class-i yaradirsiniz ve Account-u miras verirsiniz: - Fullname - Email - Password - PasswordChecker() - PasswordChecker metodu - gelen string sifre deyerinin sertleri odeyib odemediyini yoxlayib true/false deyer qaytarir. Şertler: - sifrede minimum 8 character olmalidir - sifreki buutun herfler boyuk olmamalidir - sifredeki butun herfler kicik olmamalidir (yeni sifrede hem boyuk hem kicik herf olmalidir) - ShowInfo() - bu metod Console-a user-in Fullanem ve email-inin yazdirir User classina Account class-i miras verilir.User yarandigi zaman email ve sifre teyin edilmesi mecburidir.Usere sifre teyin edilerken sifrenin PasswordChecker metodunun sertlerini odemesi lazimdir.
- Solution
- Content
- Task
- Lesson
## Lesson(4/2) => Struct ***
## Lesson(5/1) => C# Interface and Access Modifiers ***
- Task
- Content
Tapshiriq 1: Student.cs olsun, Name, Surname, Age propertyleri olsun, ancaq constructorda set olsun. Neche defe instance aldigimiziqaytaran Counter olsun, hansiniki yalniz constructorda set ede bilek. Tapshiriq 2: IFigure interface yaratmaq, CalculateArea ve CalculatePerimeter method-u olsun. Rectangle, Circle, Triangle, Square buinterface-in methodlarini implement etsin. Tapshiriq 3: ISum, IMultiply, IDifference, IDivide interface-leri olsun her birinde bir dene return type "double" olan ve parametrinde"params double[] numbers" method olsun. Bu 4 interface-i Calculator.cs class-inda her birini implement edin. Meselen: ISuminterface-inde Sum() methodu olacaq ve arrayin butun elementlerini cemleyib qaytaracaq. Multiply - vurma, Difference -chixma,Divide - bolme. Sonda Program.cs-de Calculator.cs-i chagirib, verdiyiniz deyerlere uygun method chagirib neticeni gosterin.
- Solution
- Content
- Lesson
Lesson(5/2) => Solid Principles,Dependency Injection != Inversion and C#(8) Interface
- Lesson
- Code
- Documatation
Lesson(6/1) => Task Solution
- Task
- Content
Aptek sistemi Aşağıdakı member-leri olan Medicine (derman) classi yaradirsiniz Name - dermanin adi Price - dermanin qiymeti Count - dermanin sayi Medicine obyektinin adi ve qiymeti yaradildigi an teyin olunmalidir.Adsiz ve ya qiymetsiz medicine obyekti ola bilmez Qeyd: Dermanin qiymeti 0-dan boyuk olmalidir.Dermanin sayi 0-dan az ola bilmez. Aşağıdakı memberlerden ibaret Pharmacy (aptek) class-i yaradirsiniz Medicines - aptekdeki dermanlar siyahisini ifade edir (Medicine array-i) TotalIncome - derman satislarindan elde edilen gelir.Bu memberin deyeri yalnizca satislar zamani artmalidir.Basqa hec bir sekilde deyisdirile bilinmemelidir. Sell() - bu metod derman satisi ifade edir.Parameter olaraq dermanin adi ve sayini qebul edir. Hemin ada gore sihayidan axtarib tapacagi dermanin satisini heyata kecirir. FindMedicineByName() - bu metod adina gore axtarilan derman obyektini geri qaytarir.Parameter olaraq axtarilan dermanin adini qebul edir. Hemin ad ile dermanlar sihayisindan axtaris edib eyni adli derman obyektini tapıb geri qaytarir. AddMedicine() - bu metod dermanlar siyahisina yeni derman elave etmeyi ifade edir.Parameter olaraq medicine qebul edir. Qeyd : aptekin dermanlar siyahisinda eyni adda yalnizca bir medicine obyekti ola biler.İkinci eyin adli medicine obyekti elave edile bilmez
- Solution
- Content
- Lesson
Lesson(6/2) => C# Delegate and Extension Method
- Task
- Content ``` asagidaki metodlardan iabret static ExtentionMethods class-i yaradin.
IsOdd() - int obyektler ucun hemin obyektin tek eded olub olmadigini geri qaytaran (true/false) method
IsEven() - int obyektler ucun hemin obyektin cut eded olub olmadigini geri qaytaran (true/false) method
IsContainsDigit() - string obyektler ucun hemin obyektin daxilinde digit charactre olub olmamsini geri qaytaran(true/false) metod
GetValueIndexes() - string-ler ucun parameter oaraq gonderilen charin stringin hansi indexlerinde yerlesdiyini tapan ve tapdigi butun indexleri array olaraq geri qaytaran metod (hec bir deyer tapilmazsa geriya bos (0 uzunluqlu) int[] qayidir)
GetValueIndexes() - integer array-leri ucun parameter olaraq gonderilmis integer deyerinin bu arrayin hansi indexlerinde oldugunu tapi ,butun tapdigi indexleri array olaraq geri qaytaran metod .(hec bir deyer tapilmazsa geriya bos (0 uzunluqlu) int[] qayidir)
```
- Lesson
Lesson(7/1) => Task Solution
- Task
- Content
1.CurrencyType enumi - Bu enum cerrency value-lari saxlayir (USD,EUR ve TL) ValutaExchanger static class Exchange() - parameter olaraq valyuta (CurrencyType) ve meblegi (double) Curencies - icinde currency ve meblegini tutan collection (key value mentiqinde, key olaraq currencyType, value olaraq double) Main hissesinde bu metodlar bir nece enchage heyata kecirin, o emeliyyatlar ucun gotureceyiniz deyerleri console-dan qebul edin 2.CashRegister (magazalardaki kassa aparati) classi yaradirziniz Bu class-in TotalAmount,Currency,TotalSalesCount xususiyyetleri ve AddNewSale ve RemoveSale metodlari olsun TotalAmount - kassa aparatinin kassasindaki pulun miqdarini ifade edir. Bu deyer kassa obyekti yaradildigi zaman mecburi olaraq daxil edilmeli ve daha sonradan yalnizca yeni satis elave edildikde ve ya silindikde avtomatik olaraq deyismelidir. Currency - kassa aparatinin istifade etdiyi valyutani bildirir. Currency ucun enum yaradin ve bu memberi typi olaraq da hemin enumdan istidafe edin PaymentType - satisin odenis novunu ifade edir.Bu card ve ya cash ola biler (odenis novu ucun enum istifade edin) TotalSalesCount - bu deyer kassaya daxil edilmis satis emeliyyatlarinin sayini ifade edir. Ilkin oalraq 0-dir ver yalnizca Yeni satis daxil edildikde ve ya silindikde deyisir AddSale - bu metod kassa aparatina yeni BİR satis elave etmek ucundur. Parametr olaraq satisin meblegini ve currency qebul edir.Gonderilmis currency parametr kimi gonderilmis meblegin valyutasini ifade edir ve eger gonderilen bu valyuta kassa obyetinin valyutasindan ferqlidirse (Classin Currency peopertisinden) gonderilen mebleg kassanin istifade etdiyi valyutaya cevrilib daha sonra totalAmoun-a elave edilmelidir RemoveSale - bu metod kassa aparatina daxil edilmis BİR satisi silmek ucundur. Parametr olaraq satisin meblegini ve currency qebul edir.Gonderilmis currency parametr kimi gonderilmis meblegin valyutasini ifade edir ve eger gonderilen bu valyuta kassa obyetinin valyutasindan ferqlidirse (Classin Currency peopertisinden) gonderilen mebleg kassanin istifade etdiyi valyutaya cevrilib daha sonra totalAmount-dan cixilir
- Solution
- Content
Lesson(7/2) => C# Delegate and events
Lesson(8/1) => WinForm App
- Task
- Content
Homework - C# WinForm Start Mini Kitabxana üçün bir app yazın. Kitabların adı, ISBN nömrəsi (user daxil edəcək və duplicate ola bilməz), qiyməti olmalıdır. Janrlar olacaq, janrın adı və unikal sistem tərəfindən yaradılan Id-si olacaq. Hər kitabın janr İd-si olmalıdır. Kitab yaradıldıqda janr mütləq seçilməlidir. ListBox-da bütün kitablar siyahı şəklində görsənməlidir. Kitablar janra görə listbox daxilində filter oluna bilməlidir.
- Solution
- Content
- Lesson
Lesson(8/2) => Task Solution
Lesson(9/1) => C# Thread
- Task
- Lesson
- Code
- My Documantation
Lesson(9/2) => C# Thread Pool
- Lesson
- Code
- My Documantation
Lesson(10/1) => Task And Thread In C#, StreamReader And StreamWriter Classes In C#, C# StreamReader, Get Files from Directory
- Lesson
Lesson(10/2) => C# Reflection , C# Garbage Collection
Lesson(11/1) => Sql express download ,SQL data-types ,Introduction to SQL, SQL Syntax, SQL Commands SQL Server, CREATE DATABASE, SQL Server DROP DATABASE, SQL Server CREATE TABLE, SQL Server Identity, SQL Server ALTER TABLE ADD,Column, SQL Server ALTER TABLE ALTER COLUMN, SQL Server ALTER TABLE DROP COLUMN, SQL Server Rename Table, SQL Server DROP TABLE, SELECT, Insert, Update, Delete, Top, SQL Server ORDER BY, Where, AND, OR, IN, Between, Like, Fetch
- Task
- Content
. Aşağıdakı taskları SQL queryləri ilə yazın. Baza yaradın, tabellara data əlavə edin, CRUD(create,read,update-delete) istifade edin. Academy database, student table, grade,fullname,birthdate,group AND,OR,IN,BETWEEN,LIKE,FETCH istifade edin. Bir bir dersde kodlara baxacam. Sonda ev tapsirigini dersde gosterdiyim kimi query olan file repoya yukleyin. Note. Linklər çox olsada, sadədir.
- Solution
- Content
- Lesson