C#

C Sharp, C# არის ობიექტურად ორიენტირებული, ბრძანებითი, ფუნქციური პროგრამირების ენა დამზადებული Microsoft .NET პლათფორმისთვის .

Beginning C# 7 Programming with Visual Studio 2017

Beginning C# 7 Programming with Visual Studio 2017

ენა: 2018 ავტორი: Perkins B., Hammer J.V., Reid J.D. გამომცემლობა: Wrox ISBN: 978-1-119-45872-2 ენა: ინგლისური ფორმატი: PDF გვერდები: 913 აღწერა: Easily get started programming using the ultra-versatile C# 7 and Visual Studio 2017 Beginning C# 7 Programming with Visual Studio 2017 is the beginner’s ultimate guide to the world’s most popular programming language. Whether you’re new to programming entirely, or just new to C#, there has never been a better time to get started. The new C# 7 and Visual Studio 2017 updates feature a number of new tools and features that streamline the workflow, simplify the code, and make it easier than ever to build high-quality apps. This book walks you through everything you need to know, starting from the very basics, to have you programming in
Microsoft Visual C#. Step by Step / Microsoft Visual C#

Microsoft Visual C#. Step by Step / Microsoft Visual C#

წელი: 2017 ავტორი: John Sharp / Джон Шарп მთარგმნელი რუსლად: Н. Вильчинский ISBN: 978-5-496-02372-6 ენა:რუსული/ Русский ფორმატი: Pdf გვ: 848 აღწერა: Освойте основы программирования и углубите свои познания, используя новейшую версию C# с Visual Studio 2015. Вы научитесь быстро писать код и создавать проекты, работать с переменными, операторами, выражениями и методами, разрабатывать надежные приложения с обработкой ошибок и исключений, использовать коллекции, создавать запросы LINQ, а кроме того получите навыки объектно-ориентированного программирования. Книга пригодится разработчикам программного обеспечения, которые только начинают работать с Visual C# или хотят перейти на новую версию ПО, а также всем, кто знает хотя бы один язык программирования. Опыт работы с Microsoft .N
Unity  2D Game Development – Beginners Guide [2018]

Unity 2D Game Development – Beginners Guide [2018]

წელი: 30.04.2018 შემქმნელი: Packt Publishing ავტორი: Lauren S. Ferro ხანგრძლივობა: 2:24 ენა:ინგლისური აღწერა: თუ გაქვს იდეა და არ იცი თამაში როგორ შექმნა მაშინ ეს კურსი შენთვისაა T  
რთული კლასები

რთული კლასები

ერთი ობიექტი შეიძლება მეორე ობიექტს შეიცავდეს. მაგალითად, ობიექტი „უნივერსიტეტი" შეიძლება შეიცავდეს „სტუდენტი" ობიექტს. ამ დროს კლასის ცვლადის გამოცხადება ხდება სხვა კლასის გამოყენებით. შედეგად, შეგვიძლია რთული კლასების შექმნა, რომლის წევრებს ექნება სხვა კლასების ტიპები. განვიხილოთ მაგალითი. // // პროგრამაში ხდება რთულ კლასთან მუშაობის დემონსტრირება class Studenti // მარტივი კლასი { public string gvari; public string fakulteti; public int kursi; public void Metodi_Studenti() { MessageBox.Show("მარტივი კლასი\n" + gvari + "\n" + fakulteti + "\n" + kursi.ToString()); } } class Universiteti // რთული კლასი { public Studenti studenti; // studenti ცვლადს აქვს Studenti კლასის ტიპი public string misamarti; public void Metodi_Universiteti() { MessageBox.Show("რთული კლასი\n" + misa
this საკვანძო სიტყვა

this საკვანძო სიტყვა

მეთოდს გამოძახებისას ავტომატურად გადაეცემა არაცხადი არგუმენტი, რომელიც წარმოადგენს გამომძახებელ ობიექტზე მიმართვას. ამ მიმართვას ეწოდება this. იმის გასაგებად თუ როგორ მუშაობს this მიმართვა, განვიხილოთ პროგრამა, რომელშიც იქმნება Axarisxeba კლასი. ის განკუთვნილია რიცხვის ხარისხის გამოსათვლელად. // // პროგრამაში ხარისხის გამოთვლა სრულდება კონსტრუქტორის კოდში class Axarisxeba { public double wiladi; public int mteli; public double shedegi; public Axarisxeba(double par_ricxvi, int par_xarisxi) { wiladi = par_ricxvi; mteli = par_xarisxi; shedegi = 1; if ( par_xarisxi == 0 ) return; for ( ; par_xarisxi > 0; par_xarisxi-- ) shedegi *= wiladi; } public double xarisxis_dabruneba() { return shedegi; } } private void button1_Click(object sender, EventArgs e) { double ricxvi = Co
ობიექტების მასივის შექმნა

ობიექტების მასივის შექმნა

ობიექტებისაგან შეგვიძლია შევქმნათ როგორც ერთ, ისე რამდენიმე განზომილებიანი მასივი. მოყვანილი პროგრამით იქმნება Martkutxedi ტიპის ერთგანზომილებიანი მასივი, რომელიც 5 ობიექტისაგან შედგება. მასივის გამოცხადების შემდეგ, მისი თითოეული ელემენტი (ობიექტი) ცალ-ცალკე უნდა შეიქმნას. class Martkutxedi { public int simagle; public int sigane; int perimetri; public Martkutxedi(int par1, int par2) { simagle = par1; sigane = par2; perimetri = ( simagle + sigane ) * 2; } public int Gamotana() { return perimetri; } } private void button1_Click(object sender, EventArgs e) { // Martkutxedi ტიპის ერთგანზომილებიანი მასივის შექმნა, // რომელიც 5 ობიექტისაგან შედგება Martkutxedi[] masivi = new Martkutxedi[5]; // თითოეული ობიექტის შექმნა და მათი ცვლადების ინიციალიზება for ( int ind = 0; ind &
რთულ ობიექტებთან მუშაობა

რთულ ობიექტებთან მუშაობა

ამ განყოფილებაში ვნახავთ თუ როგორ შეიძლება LINQ მოთხოვნის გამოყენება რთული ობიექტების მიმართ. მაგალითისთვის შევქმნათ სტუდენტის კლასი. // // პროგრამით ხდება LINQ მოთხოვნის გამოყენებით დემონსტრირება // რთული ობიექტების მიმართ class Studenti1 { public string gvari; public int asaki; public double tanxa; public int kursi; public string fakulteti; public Studenti1(string par1, int par2, double par3, int par4, string par5) { gvari = par1; asaki = par2; tanxa = par3; kursi = par4; fakulteti = par5; } } private void button1_Click(object sender, EventArgs e) { Studenti1[] obj = new Studenti1[10]; obj[0] = new Studenti1("სამხარაძე", 21, 1200.50, 4, "ინფორმატიკის"); obj[1] = new Studenti1("კაპანაძე", 20, 1250.50, 4, "ენერგეტიკის"); obj[2] = new Studenti1("კირვალიძე", 18, 1300.50,
აგრეგირების ოპერატორები 

აგრეგირების ოპერატორები 

LINQ მოთხოვნას აქვს აგრეგირების ოპერატორები, რომლებიც იძლევიან შედეგის ანალიზის საშუალებას. ხშირად გამოყენებადი ოპერატორებია: Average() – გასცემს შედეგში მოთავსებული რიცხვების საშუალო არითმეტიკულს; Count() – გასცემს მონაცემების რაოდენობას შედეგში; Max() – გასცემს შედეგში მოთავსებული მონაცემების მაქსიმალურ მნიშვნელობას;  Min() – გასცემს შედეგში მოთავსებული მონაცემების მინიმალურ მნიშვნელობას; Sum() - გასცემს შედეგში მოთავსებული რიცხვების ჯამს. ამ ოპერატორების მუშაობის დემონსტრირება ხდება მოყვანილი პროგრამით. // //          პროგრამით ხდება Average(), Count(), Max(), Min(), Sum() //          ოპერატორების მუშაობის დემონსტრირება Random Shemtxveviti_Ricxvebi = new Random(); int[] masivi = new int[12345678]; for ( int i = 0; i < masivi.Length; i++ ) masivi[i] = Shemtxveviti_Ric
მონაცემთა დიდი ზომის ნაკრებთან მუშაობა 

მონაცემთა დიდი ზომის ნაკრებთან მუშაობა 

LINQ მოთხოვნა შეგვიძლია, აგრეთვე გამოვიყენოთ დიდი ზომის რიცხვითი მასივიდან რიცხვების ამოსაჩევად. მოყვანილი პროგრამით ხდება ამის დემონსტრირება. // //          შედეგიდან 5500-ზე ნაკლები მნიშვნელობის მქონე რიცხვების ამორჩევა label1.Text = ""; Random Shemtxveviti_Ricxvebi = new Random(); int[] masivi = new int[1000000]; for ( int i = 0; i < masivi.Length; i++ ) masivi[i] = Shemtxveviti_Ricxvebi.Next(); //          LINQ მოთხოვნის ფორმირება var shedegi = from cvladi in masivi  where cvladi < 5500 select cvladi; //          შედეგების ეკრანზე გამოტანა label1.Text = "5500-ზე ნაკლები რიცხვები:\n"; foreach (var elementi in shedegi) label1.Text += elementi.ToString() + "   "; } ძირითადი პროგრამიდან ხდება RixvebisGenerireba() მეთოდის გამოძახება და მისთვის 1000000-
LINQ  მეთოდის სინტაქსი და ლამბდა გამოსახულებები  

LINQ  მეთოდის სინტაქსი და ლამბდა გამოსახულებები  

 როგორც აღვნიშნეთ, პროგრამა დაიწერა LINQ მოთხოვნის სინტაქსის გამოყენებით. ახალა იგივე პროგრამა დავწეროთ LINQ მეთოდის სინტაქსის გამოყენებით. LINQ არის განხორციელებული როგორც კოლექციების, მასივების, მოთხოვნების შედეგების და სხვა ობიექტების, რომლებიც უზრუნველყოფენ IEnumerable ინტერფეისს, გაფართოებული მეთოდების სერია. LINQ-ს გაფართოებული მეთოდები გამოჩნდება, თუ 18.1 პროგრამაში saxelebi ცვლადის შემდეგ შევიტანთ „ .“ წერტილს. გაიხსნება სია, რომელშიც გამოჩნდება LINQ-ს გაფართოებული მეთოდები: Aggregate<>, All<>, Any<>, Average<>, First<>, Last<>, Contains<>, Take<>, Where<>, Reverse<> Sum<> და ა.შ. თუ using System.Linq დირექტივას გავაკომენტარებთ, მაშინ სიაში ეს მეთოდები აღარ გამოჩნდება.   უნდა გვახსოვდეს, რომ მოთხოვნის სინტაქსი უნდ
LINQ მოთხოვნის სინტაქსი

LINQ მოთხოვნის სინტაქსი

ინტეგრირებული მოთხოვნების ენა (LINQ, Language-Integrated Query) არის C# ენის გაფართოება, რომელიც ინტეგრირებულია ამ ენაში. ის არის დიდი მოცულობის მონაცემებთან მუშაობის მოხერხებული, სწრაფი და ეფექტური მექანიზმი. LINQ გვათავისუფლებს მონაცემების გაფილტვრისა და დახარისხების რთული და გრძელი კოდების წერისაგან. ის არის მოთხოვნების ენა, რომელიც საშუალებას გვაძლევს მიღებული შედეგები ადვილად დავახარისხოთ, გავფილტროთ და შევასრულოთ გამოთვლები. LINQ საშუალებას გვაძლევს ეფექტურად ვიმუშაოთ დიდი ზომის მონაცემთა ბაზებთან და კომპლექსურ XML დოკუმენტებთან, რომლებშიც მილიონზე მეტი ჩანაწერია. LINQ ტექნოლოგია შეგვიძლია გამოვიყენოთ მონაცემთა Object, SQL და XML ტიპების მიმართ: წარმოქმნის მოთხოვნებს, რომლებიც      გამოიყენება    მასივების,       სიებისა           და        სხვა კოლექციების მიმართ. წარმო
mainpage info sms ვირუსის პროგრამის გაშიფვრა + JS/JSE Encoding/Decoding

mainpage info sms ვირუსის პროგრამის გაშიფვრა + JS/JSE Encoding/Decoding

ერთმა დადო ერთ-ერთ ჯგუფში საიტი yousms.info, სადაც დევს პროგრამა, რომლითაც შეგიძლია გააგზავნო დღეში ერთი სმს უფასოდ, მაგრამ ნომრის მაგივრად შეგიძლია რა სახელიც გინდა ის ჩაწერო, მაგალითად TBC Bank. მოკლედ დადო და დაწერა რომ ვირუსიაო, დამაინტერესა და გადავწყვიტე დამეშალა და მენახა რა იყო. ახლა ზუსტად მივყვებით იმ ნაბიჯებს რაც მე გავაკეთე და ბოლოში იმასაც ისწავლით, როგორ გაუკეთოთ encode / decode ჯავასკრიპტის კოდს. სანამ რამეს დავიწყებთ, დაგვჭირდება NetReflector, რომლის დაყენების ინსტრუქცია და გადმოსაწერი ლინკი შეგიძლიათ ნახოთ აქ. ეს კი ენკოდერის და დეკოდერის არქივის ლინკი. მოკლედ გადმოვწერეთ პროგრამა "Send SMS.exe", გავხსენით რეფლექტორი და ჩავაგდეთ შიგნით. მე რამდენჯერმე +-ს დავაჭირეთ და მივედით ".ctor()"-ზე, სადაც გვხვდება ესეთი სურათი: აქედან ჩანს, რომ პროგრამა პირველი რიგში ამოწმებს
ჰეშ-ცხრილები

ჰეშ-ცხრილები

ჰეშ-ცხრილები ინახავენ   წყვილებს-გასაღები-მნიშვნელობა,ანუ    ჰეშ-ცხრილის თითოეული ელემენტი შედგება გასაღებისა და მნიშვნელობისაგან. გასაღები გამოიყენება შესაბამისი მნიშვნელობის მისაღებად. ჰეშ-ცხრილები განსაზღვრულია Hashtable კლასში. ამ კლასის თვისებები და მეთოდები მოყვანილია ცხრილებში 14.3 და 14.4. ჰეშ-ცხრილში გასაღები და მნიშვნელობა შეიძლება იყოს ნებისმიერი ტიპის ობიექტი. თუმცა, ჩვეულებრივ, გასაღების როლში ხშირად სტრიქონებს იყენებენ. Hashtable კლასის თვისებები თვისებები ტიპი აღწერა Count int შეიცავს ჰეშ-ცხრილში შენახული ელემენტების რაოდენობას IsFixedSize bool ამოწმებს აქვს თუ არა ჰეშ-ცხრილს ფიქსირებული სიგრძე IsReadOnly bool ამოწმებს არის თუ არა ჰეს-ცხრილი მხოლოდ წაკითხვადი Item object გასცემს ან აყენებს მითითებული გასაღების მქონე ელემენტის მნიშვნელო
0Shares