آموزش برنامه نویسی 101

Programming 101

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: درک دانش پایه اساسی سخت افزار، شبکه، برنامه نویسی و مجوز. تعداد بیت ها درک داده های باینری درک پردازش بیت درک ساختار اصلی شبکه درک مسیریاب ها، ISP ها، بسته ها و HTTP دانش کامل زبان های برنامه نویسی درک مفاهیم پشت زبان برنامه نویسی درک متغیرها و ثابت ها درک توابع، آرگومان ها و پارامترها آگاهی از مجوزهای نرم افزاری درک DRM، ثبت اختراعات و اخلاقیات صنعت پیش نیازها: هر کسی، یک تازه کار کامل می تواند در صورت تمایل این دوره را بگذراند.

بیشتر مردم نمی دانند که دستگاه آنها چگونه باینری پردازش می کند و با داده ها کار می کند، از ماشین لباسشویی گرفته تا تلفن هوشمند. من متوجه شدم که حتی برخی از برنامه نویسان هم چنین دانشی ندارند. من در واقع مقصر این گناه هستم!

من با یادگیری یک زبان برنامه‌نویسی ابتدا به جای تلاش برای درک رایانه در سطح سخت‌افزار از دست دادم. به عنوان برنامه نویس، سخت افزار را کنترل می کنیم و در نهایت حتی اگر در جاوا اسکریپت برنامه نویسی می کنید، باید در مورد حافظه و نحوه عملکرد زبان بدانید. بنابراین درک داده‌های باینری، حافظه دائمی و موقت، CPU، SPU، GPU، شبکه و موارد دیگر حتی اگر یک توسعه‌دهنده وب هستید، همچنان در مورد شما صدق می‌کند.

این دوره پایه‌ای از دانش خواهد بود که در مورد موضوعات خاصی که باید پوشش داده شوند، می‌توان آن را درک کرد. به شما یک پایه محکم برای رشد می دهد. من معتقد نیستم که اولاً درک یک زبان برنامه نویسی راه درستی برای پیشبرد امور است. زبان های برنامه نویسی به عنوان ابزاری برای ما تکامل یافته اند. نه رایانه! بنابراین، اگر سخت‌افزار رایانه را درک کنیم، به وضوح متوجه می‌شویم که برنامه‌های ما چگونه دستگاه ما را کنترل می‌کنند.

کامپیوترها ابزارهایی هستند که ما آن‌ها را برای بهره‌مندی از نوع بشر ایجاد کرده‌ایم، با این حال، مانند همه ابزارها، باید آنها را بیشتر و بیشتر بهبود بخشیم. با این حال، اصل اصلی رایانه ها از همان اولین رایانه ای که تا کنون اختراع شد، تغییر نکرده است. با گذشت زمان، ابزار یا رایانه اصلاح شده است. با این حال، فرآیند اصلی و سادگی در اصول زیربنایی از ابتدای محاسبات یکسان بوده است، یعنی پردازش یکها و هیچ. رایانه‌ها در هر زمان از پردازش 8 به 64 بیت رسیده‌اند. این فقط رایانه است که می‌تواند بیت‌های بیشتری را پردازش کند و بنابراین عملیات قدرتمندتری را می‌توان در یک زمان انجام داد.

اشتباه نکنید رایانه‌ها بسیار پیشرفته‌تر هستند، اما مفهوم تمام آنچه که می‌گویم به اندازه‌ای ساده است که حتی یک مبتدی نیز می‌تواند آنچه را که اکثر مردم آن را پیشرفته‌تر و بالاتر از سطح دستمزد خود می‌دانند، یاد بگیرد.

به همین ترتیب درک شبکه به ویژه برای توسعه‌دهندگان وب امروزی اهمیت حیاتی دارد. برنامه‌های بیشتری آنلاین می‌شوند، بنابراین درک زیرساخت‌های شبکه، که بیش از یک دهه است، امروز هنوز مهم است.

در مورد زبان های برنامه نویسی چطور؟ ما آنها را به‌عنوان ابزاری برای برقراری ارتباط با این ماشین‌های پردازش خام اختراع کردیم. ما باید درک کنیم که چرا زبان های برنامه نویسی داریم و چگونه کار می کنند. برای مثال، کامپایلرها یا ترانسپایلرها چیست؟ چگونه شکل ارتباط خود، زبان‌های انسانی را گرفته‌ایم و آن را به یک ارتباط مؤثر برای دستکاری رایانه و زبان‌های برنامه‌نویسی تبدیل کرده‌ایم؟ در مورد متغیرها، ثابت‌ها، توابع، اشیا و آرایه‌هایی که امروزه در همه زبان‌های اصلی برنامه‌نویسی وجود دارند، چطور؟ همچنین همه زبان‌ها دارای اپراتور هستند و اگر آنها را در یک زبان برنامه‌نویسی نداشتید، اصلاً زبان برنامه‌نویسی نخواهید داشت.

در این دوره ما حتی بیشتر به پارادایم های برنامه نویسی خواهیم پرداخت. پارادایم فقط به معنای مدلی برای چگونگی انجام کاری است. بنابراین در این مورد می‌توانیم برنامه‌هایمان را به شیوه‌ای خاص یا در پارادایم خاصی بنویسیم. تعداد بسیار کمی از مبتدیان سبک برنامه نویسی خود را در نظر می گیرند. هنگام ایجاد برنامه‌های مقیاس کوچک، کار چندان دشواری نیست، اما هنگام ایجاد برنامه‌های مقیاس بزرگ، پارادایم‌ها ضروری می‌شوند.

بیشتر زبان‌های برنامه‌نویسی به شما انعطاف‌پذیری می‌دهند تا پارادایم‌ها یا سبک‌های برنامه‌نویسی را برای نوشتن برنامه‌تان ترکیب و مطابقت دهید. شما چند سبک اصلی مانند اسمبلی، رویه ای و شی گرا دارید. توجه داشته باشید که در یک برنامه واحد می‌توانید این پارادایم‌ها را معمولاً رویه‌ای و شی گرا با هم ترکیب کنید تا آن بخش از برنامه در مقیاس بزرگ خود را به بهترین وجه تطبیق دهید. من سبک‌های این پارادایم‌ها را به شما نشان می‌دهم و سپس رویه‌ای و OOP (پارادایم/برنامه‌نویسی شی گرا) را برای نشان دادن نحوه عملکرد ذهن انسان با پارادایم‌های متفاوت اعمال می‌کنم. ثابت می کند که پارادایم های چندگانه راه رو به جلو هستند.

در پایان در پایان یادگیری چنین طیف وسیعی از موضوعات در یک دوره واضح و مختصر. شما همچنین در مورد مجوزهایی که باید به ویژه برای تازه واردان پوشش داده شود، یاد خواهید گرفت. سپس در مورد اخلاق نرم افزاری مانند DRM، حق ثبت اختراع نرم افزار و بسیاری از جنبه های دیگر از نحوه برخورد دولت با داده های شما بیاموزید.

بعد از همه اینها، اگر هنوز راضی نیستید، می‌توانید 100% ضمانت بازگشت پول خود را داشته باشید، اگر دوره واقعاً هزینه‌ای داشته باشد. بنابراین این بیت آخر واقعاً همان بیتی است که آن را می فروشد، چه چیزی برای از دست دادن دارید؟


سرفصل ها و درس ها

معرفی Introduction

  • معرفی Introduction

درک سخت افزار Understanding Hardware

  • پایه 2 چیست؟ What is base 2?

  • درک بیت ها و بایت ها Understanding bits and bytes

  • شمارش باینری Counting binary

  • بزرگی امضا شده، بایت امضا شده یا بدون علامت Signed magnitude, signed or unsigned byte

  • چگونه کامپیوترها داده های باینری را پردازش می کنند How do computers process binary data

  • تکامل محاسبات 8 16 32 و 64 بیتی Evolution of 8 16 32 and 64bit computing

  • صدا و ضبط Sound and recording

  • سیستم عامل و بایوس Firmware and BIOS

  • حافظه موقت و پایدار Temporary and persistent memory

مبانی شبکه Basics of networking

  • ساختار اصلی شبکه Basic network structure

  • IPV4، IPV6 و بسته ها IPV4, IPV6 and packets

  • آدرس های MAC MAC Addresses

  • سرورها و HTTP Servers and HTTP

آشنایی با سیستم عامل ها Understanding Operating Systems

  • سیستم عامل چیست؟ What is an operating system?

  • API و کنسول API and the console

دانش برنامه نویسی پایه Basic Programming Knowledge

  • زبان های برنامه نویسی و اجرا Programming languages & execution

  • مترجمان، کامپایلرها و تدوین JIT Interpreters, compilers & JIT compilation

  • زبان های برنامه نویسی، برنامه نویسی و نشانه گذاری Programming, scripting & markup languages

  • زبان های سمت کلاینت در مقابل سرور Client vs server side languages

  • زبان های برنامه نویسی سطح بالاتر و پایین تر Higher & lower level programming languages

  • داده های اولیه، اسم ها، صفت ها و افعال Primitive data, nouns, adjectives & verbs

  • متغیرها و ثابت ها Variables and constants

  • توابع، پارامترها و آرگومان ها Functions, parameters & arguments

  • اشیاء و آرایه ها Objects & arrays

  • سلسله مراتب شی Object hierarchy

  • اپراتورها Operators

پارادایم های برنامه نویسی Programming Paradigms

  • پارادایم های برنامه نویسی Programming paradigms

  • ذهنیت پارادایم قابل برنامه ریزی Programmable paradigm mindset

  • تفاوت بین ساخت OOP و شی The difference between OOP and object construction

نتیجه گیری و خداحافظ Conclusion and Goodbye

  • اخلاق نرم افزار - صدور مجوز Software morality - licensing

  • اخلاق نرم افزار - DRM و ثبت اختراع Software morality - DRM and patents

  • اخلاق نرم افزار - داده ها Software morality - data

  • از کجا شروع کنیم؟ Where to start?

  • نتیجه گیری و خداحافظ Conclusion & Goodbye

نمایش نظرات

آموزش برنامه نویسی 101
جزییات دوره
4.5 hours
35
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
137,505
4.5 از 5
ندارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Lawrence Turton Lawrence Turton

مربی فنی لارنس تورتون به عنوان یک توسعه دهنده وب و طراح گرافیک متخصص در HTML ، CSS ، jQuery ، طراحی UI و UX کار می کند. او پیش از این با تولید وب سایت ها ، برنامه های آیفون و آندروید با Fifteendesign کار کرده و نمایندگی خود را در سال 2010 با نام Elite Web Design تاسیس کرده است. در آن زمان لارنس طیف گسترده ای از مشتریان را از شرکت های تولید تراشه های آبی تا شرکت های بزرگ تأسیس کرده است. از جوانی او یک مربی آنلاین بود و با دو نفر از متخصصان برتر آموزش آنلاین Cartoonsmart و Envato کار کرد. لارنس همیشه پروژه هایی را ایجاد می کرد که شامل طراحی در فتوشاپ و زنده کردن خلاقیت های خود با کدگذاری آنها با فناوری های وب بود. این امر از ابتدا تا انتها چشم انداز منحصر به فردی به پروژه های دنیای واقعی و اطلاعات زیادی برای تازه واردان به صنعت وب به وی می دهد.