Anzeige

مفاهیم اساسی برنامه نویسی کامپیوتر

Lead Software Engineer um Maersk
23. Dec 2022
Anzeige

Más contenido relacionado

Similar a مفاهیم اساسی برنامه نویسی کامپیوتر(20)

Anzeige

Último(20)

مفاهیم اساسی برنامه نویسی کامپیوتر

  1. Computer Programming Core Concepts ‫کامپیوتر‬ ‫نویسی‬ ‫برنامه‬ ‫اساسی‬ ‫مفاهیم‬ https://hosseinzahed.com hello@hosseinzahed.com 1 Hossein Zahed ‫زاهد‬ ‫حسین‬ -
  2. Computer Parts – ‫کامپیوتر‬ ‫اجزای‬ • ‫اصلی‬ ‫بورد‬ (Mother Board) • ‫مدت‬ ‫بلند‬ ‫حافظه‬ (Hard Disk) • ‫مدت‬ ‫کوتاه‬ ‫حافظه‬ (RAM) • ‫اصلی‬ ‫پردازشگر‬ (CPU) • ‫گرافیکی‬ ‫پردازشگر‬ (GPU) • ‫سیم‬ ‫بی‬ ‫ارتباطی‬ ‫ابزارهای‬ (WIFI, Bluetooth) • ‫خروجی‬ ‫و‬ ‫ورود‬ ‫های‬ ‫پورت‬ (USB, HDMI, DP) • ‫برق‬ ‫تغذیه‬ ‫منبع‬ (Power) https://hosseinzahed.com hello@hosseinzahed.com 2
  3. Variables – ‫متغیرها‬ • ‫از‬ ‫استفاده‬ ‫و‬ ‫دسترسی‬ ‫برای‬ ‫روشی‬ RAM • ‫دهی‬ ‫مقدار‬ ( ‫در‬ ‫ذخیره‬ RAM ) • ‫بازخوانی‬ ( ‫از‬ ‫خواندن‬ RAM ) • ‫از‬ ‫شدن‬ ‫حذف‬ RAM https://hosseinzahed.com hello@hosseinzahed.com 3 x = 5 print(x) Memory (RAM) … 5 … … … …
  4. Data Types – ‫داده‬ ‫انواع‬ Data Type ‫داده‬ ‫نوع‬ Character (Unicode / UTF-8) ‫حرف‬ ‫تک‬ ( ‫زبانها‬ ‫تمام‬ ‫به‬ ) String ‫حروف‬ ‫از‬ ‫ای‬ ‫رشته‬ ( ‫متن‬ ،‫جمله‬ ،‫کلمه‬ ) Boolean (true or false) ‫خیر‬ ‫یا‬ ‫بله‬ ،‫غلط‬ ‫یا‬ ‫درست‬ ،‫یک‬ ‫و‬ ‫صفر‬ Number ‫عدد‬ ( ‫اعشاری‬ ،‫صحیح‬ ،‫منفی‬ ،‫مثبت‬ ) Date & Time ‫ساعت‬ ‫و‬ ‫تاریخ‬ Array / List / Collection ‫مجموعه‬ ،‫لیست‬ ،‫آرایه‬ Dictionary (Key-Value pair) ‫کلید‬ ‫از‬ ‫لیستی‬ - ‫مقدار‬ Null / None / Nil ‫خالی‬ ،‫نشده‬ ‫دهی‬ ‫مقدار‬ Object ‫ها‬ ‫متغیر‬ ‫تمام‬ ‫ای‬ ‫ریشه‬ ‫و‬ ‫اصلی‬ ‫ساختار‬ Stack, Tree, Queue, Graph, Linked List ‫تر‬ ‫پیچیده‬ ‫ساختارهای‬ ( ‫متصل‬ ‫های‬ ‫لیست‬ ،‫گراف‬ ،‫درخت‬ ) https://hosseinzahed.com hello@hosseinzahed.com 4
  5. Coding Syntax – ‫کدنویسی‬ ‫روش‬ • ‫مختلف‬ ‫های‬ ‫زبان‬ ‫در‬ ‫کدنویسی‬ ‫روش‬ • ‫کد‬ ‫های‬ ‫بلوک‬ ‫ساختار‬ • ‫زبان‬ ‫هر‬ ‫در‬ ‫کدنویسی‬ ‫های‬ ‫قرارداد‬ https://hosseinzahed.com hello@hosseinzahed.com 5 // C++ code #include <iostream> using namespace std; int main() { string greet = "Hello World"; cout << greet; return 0; } # python code greet = "Hello World" print(greet)
  6. Algorithms – ‫ها‬ ‫الگوریتم‬ • ‫مسئله‬ ‫یک‬ ‫حل‬ ‫های‬ ‫روش‬ • ‫نهایتا‬ ‫که‬ ‫دستورات‬ ‫از‬ ‫ترتیبی‬ ‫توسط‬ CPU ‫شوند‬ ‫می‬ ‫پردازش‬ • ‫چارت‬ ‫فلو‬ – Flow Chart ( ‫دستورات‬ ‫و‬ ‫ها‬ ‫پروسه‬ ‫نمایش‬ ) • ‫مصنوعی‬ ‫کدنویسی‬ – Pseudocode https://hosseinzahed.com hello@hosseinzahed.com 6
  7. Flow Structure – Selection (Conditionals) ‫شرطی‬ ‫یا‬ ‫انتخابی‬ ‫ساختار‬ • ‫شرط‬ ‫یک‬ ‫ارزیابی‬ ‫برای‬ ‫گیری‬ ‫تصمیم‬ ‫روش‬ • ‫های‬ ‫کد‬ if – else – elseif ‫ای‬ ‫مرحله‬ ‫ارزیابی‬ ‫برای‬ • ‫های‬ ‫کد‬ switch ‫فرض‬ ‫پیش‬ ‫های‬ ‫حالت‬ ‫ارزیابی‬ ‫برای‬ https://hosseinzahed.com hello@hosseinzahed.com 7 number = 10 if number > 0: print('Positive number') else: print('Negative number') lang = input("What's the programming language you want to learn? ") match lang: case "Python": print("You can become a Data Scientist") case “Java": print("You can become a mobile app developer") case _: print("The language doesn't matter, what matters is solving problems.")
  8. Flow Structure – Iteration (Loops) ‫حلقه‬ ‫ساختار‬ • ‫شرط‬ ‫یک‬ ‫مبنای‬ ‫بر‬ ‫کد‬ ‫از‬ ‫بخشی‬ ‫تکرار‬ ‫برای‬ ‫روشی‬ • ‫خاص‬ ‫کاربردهای‬ ‫برای‬ ‫شرط‬ ‫بدون‬ ‫های‬ ‫حلقه‬ https://hosseinzahed.com hello@hosseinzahed.com 8 fruits = ["apple", "banana", "cherry"] for item in fruits: print(item) fruits = ["apple", "banana", "cherry"] for item in fruits: if item == "banana": break print(item)
  9. IDE (Integrated Development Environment) ‫نویسی‬ ‫برنامه‬ ‫جامع‬ ‫های‬ ‫محیط‬ • Visual Studio Code (Microsoft) • Visual Studio (Microsoft) • Rider (JetBrains) • IntelliJ (JetBrains) • Eclipse (Eclipse Foundation) Main Features - Code compilation - Syntax highlighting - Debugging - Testing - Organizing https://hosseinzahed.com hello@hosseinzahed.com 9
  10. Debugging – ‫زدایی‬ ‫اشکال‬ • ‫کدنویسی‬ ‫در‬ ‫اشکاالت‬ ‫رفع‬ ‫و‬ ‫یافتن‬ ‫برای‬ ‫هایی‬ ‫تکنیک‬ ‫و‬ ‫روشها‬ • ‫فراوان‬ ‫حوصله‬ ‫و‬ ‫صبر‬ ‫و‬ ‫کنجاوی‬ ‫نیازمند‬ • ‫میشود‬ ‫تقویت‬ ‫تجربه‬ ‫با‬ ‫که‬ ‫مهارتی‬ • ‫امکانات‬ ‫از‬ ‫صحیح‬ ‫استفاده‬ IDE https://hosseinzahed.com hello@hosseinzahed.com 10
  11. Programming Paradigms ‫نویسی‬ ‫برنامه‬ ‫های‬ ‫پارادایم‬ • ‫آنها‬ ‫امکانات‬ ‫مبنای‬ ‫بر‬ ‫نویسی‬ ‫برنامه‬ ‫های‬ ‫زبان‬ ‫بندی‬ ‫دسته‬ ‫برای‬ ‫روشی‬ • OOP: C#, Java, Python, PHP, C++ • Functional: F#, Haskell, Lisp, Erlang • Machine Code: Assembly https://en.wikipedia.org/wiki/Programming_paradigm https://hosseinzahed.com hello@hosseinzahed.com 11
  12. The Best Programming Language ‫نویسی‬ ‫برنامه‬ ‫زبان‬ ‫بهترین‬ • ‫نویسی؟‬ ‫برنامه‬ ‫زبان‬ ‫بهترین‬ ! • ‫اساس‬ ‫بر‬ ‫زبان‬ ‫انتخاب‬ : • ‫آن‬ ‫کاربرد‬ ‫و‬ ‫پارادایم‬ • ‫پیشین‬ ‫های‬ ‫تجربه‬ • ‫پروژه‬ ‫نیازمندهای‬ • ‫میزبانی‬ ‫فضای‬ ‫امکانات‬ • ‫همکاران‬ ‫و‬ ‫فنی‬ ‫تیم‬ ‫دانش‬ • ‫آموزشی‬ ‫منابع‬ • ‫فنی‬ ‫پشتیبانی‬ • ‫یادگیری‬ ‫منحنی‬ (Learning Curve) https://hosseinzahed.com hello@hosseinzahed.com 12
Anzeige