✳️ برنامه نویسی شی گرا در C++ — آموزش رایگان، به زبان ساده و جامع
زبان برنامه نویسی C++ (سی پلاسپلاس) یکی از اولین زبانهایی است که برنامه نویسی شی گرا (OOP) در آن پیادهسازی و در سطح گستردهای توسط برنامه نویسان مورد استفاده قرار گرفته است. C و C++ از جمله زبانهای برنامه نویسی به حساب میآیند که اکثراً در دانشگاهها تحت عنوان دروس مبانی برنامهنویسی و برنامهنویسی پیشرفته تدریس میشوند و در واقع یکی از اولین زبانهایی هستند که برای آموزش مقدماتی دانشجویان رشته کامپیوتر و برنامهنویسان مبتدی مورد استفاده قرار میگیرند. بنابراین، یادگیری برنامه نویسی شی گرا در C++ اهمیت ویژهای دارد. بدین سبب، این مقاله با هدف آموزش مباحث و مفاهیم برنامه نویسی شی گرا در C++ و بیان مفهوم کلاس در C++ و سایر مفاهیم مرتبط ارائه شده است. به عنوان مقدمه، در ابتدا به این مسئله پرداخته شده است که برنامه نویسی شی گرا چیست؟
══ فهرست مطالب ══
○ برنامه نویسی شی گرا چیست ؟
○ چرا نیاز به برنامه نویسی شی گرا در C++ وجود دارد؟
○ مزایای برنامه نویسی شی گرا چیست؟
○ خصوصیات یک زبان برنامه نویسی شی گرا چیست؟
○ کلاس در C++ چیست؟
○ شی در C++ چیست؟
○ کپسولهسازی در C++ چیست؟
○ انتزاع دادهها در C++ چیست؟
○ چندریختی در C++ چیست؟
○ ارث بری در C++ چیست؟
○ معرفی فیلم های آموزش برنامه نویسی C و C++
○ آموزش برنامه نویسی شی گرا در C++
○ مثال برنامه نویسی شی گرا در C++ : کلاس Circle
○ معرفی فیلم های آموزشی برنامه نویسی شی گرا در C++
○ جمعبندی
🔸 برنامه نویسی شی گرا چیست ؟
همانطور که از نامش پیداست، در برنامه نویسی شی گرا (Object Oriented Programming | OOP) از اشیا استفاده میشود. برنامه نویسی شی گرا برای ساختاردهی به یک برنامه نرمافزاری و تبدیل آن به قطعات ساده و قابل استفاده مجدد است. این قطعات درست مثل نقشه ساخت هستند و به آنها «کلاس» (Class) گفته میشود. هدف برنامه نویسی شی گرا ، پیادهسازی نهادهای جهان واقعی همچون وراثت (ارثبری)، پنهانسازی، چندریختی (Polymorphism) و دیگر موارد در برنامهنویسی است. هدف اصلی OOP پیوند دادن دادهها و توابعی است که روی دادهها عملیات انجام میدهند.
در این مقصود، پیوند باید بهگونهای شکل بگیرد که امکان دسترسی به آن دادهها در هیچ بخش دیگری از کدها به غیر از تابع وجود نداشته باشد. در سالهای اخیر، قابلیت برنامه نویسی شی گرا در C++ و بسیاری از زبانهای برنامه نویسی دیگر فراهم شده است. برای استفاده از این قابلیت، ابتدا باید درکی از دلیل استفاده از برنامه نویسی شی گرا وجود داشته باشد. بنابراین، در ادامه به این سوال پاسخ داده شده است که چرا نیاز به برنامه نویسی شی گرا در C++ و سایر زبانهای شی گرا وجود دارد؟
🔸 چرا نیاز به برنامه نویسی شی گرا در C++ وجود دارد؟
در این بخش از مقاله برنامه نویسی شی گرا در C++ ، به چرایی نیاز به شی گرایی در C++ و سایر زبانهای شی گرا پرداخته شده است. ابتدا با یک مثال ساده، استفاده از اجزا و قطعات کوچکتر برای تولید یک موجودیت بزرگتر در سختافزار و نرمافزار با هم مقایسه شدهاند و سپس برای روشن شدن دلیل استفاده از شی گرایی، زبانهای برنامه نویسی سنتی یا رویهگرا (Procedural) شرح داده شدهاند. پس از آن، به معرفی مفهوم برنامه نویسی شی گرا در C++ و سایر زبانهای شی گرا و شرح ویژگیهای آن پرداخته شده است.
اگر فردی بخواهد کامپیوتر شخصی خودش را سرهم (مونتاژ) کند، به فروشگاههای قطعات سختافزار کامپیوتر مراجعه خواهد کرد و یک مادربرد، پردازنده، چند RAM، یک هارد دیسک، کیس، منبع تغذیه و سایر قطعات را خریداری میکند و آنها را سرهمبندی خواهد کرد. پس از آن، کامپیوتر را به برق وصل میکند و PC روشن میشود. این فرد دیگر نگرانی بابت این مسئله ندارد که آیا مادربورد چهار لایه یا شش لایه است یا آیا هارد دیسک چهار صفحه دارد یا شش صفحه یا اینکه ضخامت آن سه یا پنج اینچ است. البته، باید مطمئن شد که رابطها با هم همخوانی داشته باشند. به عنوان مثال، در صورتی که مادربورد تنها از رابط IDE پشتیبانی میکند، باید اطمینان حاصل کرد که به جای رابط SCSI، یک هارد دیسک با رابط IDE خریداری شود.
مطالعه ادامه مطلب 👇👇
🔗 برنامه نویسی شی گرا در C++ — آموزش رایگان، به زبان ساده و جامع — کلیک کنید (+)
📌 کانال اختصاصی آموزشی برنامهنویسی
آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇
@FaraProg — مطالب و آموزشهای برنامهنویسی فرادرس
زبان برنامه نویسی C++ (سی پلاسپلاس) یکی از اولین زبانهایی است که برنامه نویسی شی گرا (OOP) در آن پیادهسازی و در سطح گستردهای توسط برنامه نویسان مورد استفاده قرار گرفته است. C و C++ از جمله زبانهای برنامه نویسی به حساب میآیند که اکثراً در دانشگاهها تحت عنوان دروس مبانی برنامهنویسی و برنامهنویسی پیشرفته تدریس میشوند و در واقع یکی از اولین زبانهایی هستند که برای آموزش مقدماتی دانشجویان رشته کامپیوتر و برنامهنویسان مبتدی مورد استفاده قرار میگیرند. بنابراین، یادگیری برنامه نویسی شی گرا در C++ اهمیت ویژهای دارد. بدین سبب، این مقاله با هدف آموزش مباحث و مفاهیم برنامه نویسی شی گرا در C++ و بیان مفهوم کلاس در C++ و سایر مفاهیم مرتبط ارائه شده است. به عنوان مقدمه، در ابتدا به این مسئله پرداخته شده است که برنامه نویسی شی گرا چیست؟
══ فهرست مطالب ══
○ برنامه نویسی شی گرا چیست ؟
○ چرا نیاز به برنامه نویسی شی گرا در C++ وجود دارد؟
○ مزایای برنامه نویسی شی گرا چیست؟
○ خصوصیات یک زبان برنامه نویسی شی گرا چیست؟
○ کلاس در C++ چیست؟
○ شی در C++ چیست؟
○ کپسولهسازی در C++ چیست؟
○ انتزاع دادهها در C++ چیست؟
○ چندریختی در C++ چیست؟
○ ارث بری در C++ چیست؟
○ معرفی فیلم های آموزش برنامه نویسی C و C++
○ آموزش برنامه نویسی شی گرا در C++
○ مثال برنامه نویسی شی گرا در C++ : کلاس Circle
○ معرفی فیلم های آموزشی برنامه نویسی شی گرا در C++
○ جمعبندی
🔸 برنامه نویسی شی گرا چیست ؟
همانطور که از نامش پیداست، در برنامه نویسی شی گرا (Object Oriented Programming | OOP) از اشیا استفاده میشود. برنامه نویسی شی گرا برای ساختاردهی به یک برنامه نرمافزاری و تبدیل آن به قطعات ساده و قابل استفاده مجدد است. این قطعات درست مثل نقشه ساخت هستند و به آنها «کلاس» (Class) گفته میشود. هدف برنامه نویسی شی گرا ، پیادهسازی نهادهای جهان واقعی همچون وراثت (ارثبری)، پنهانسازی، چندریختی (Polymorphism) و دیگر موارد در برنامهنویسی است. هدف اصلی OOP پیوند دادن دادهها و توابعی است که روی دادهها عملیات انجام میدهند.
در این مقصود، پیوند باید بهگونهای شکل بگیرد که امکان دسترسی به آن دادهها در هیچ بخش دیگری از کدها به غیر از تابع وجود نداشته باشد. در سالهای اخیر، قابلیت برنامه نویسی شی گرا در C++ و بسیاری از زبانهای برنامه نویسی دیگر فراهم شده است. برای استفاده از این قابلیت، ابتدا باید درکی از دلیل استفاده از برنامه نویسی شی گرا وجود داشته باشد. بنابراین، در ادامه به این سوال پاسخ داده شده است که چرا نیاز به برنامه نویسی شی گرا در C++ و سایر زبانهای شی گرا وجود دارد؟
🔸 چرا نیاز به برنامه نویسی شی گرا در C++ وجود دارد؟
در این بخش از مقاله برنامه نویسی شی گرا در C++ ، به چرایی نیاز به شی گرایی در C++ و سایر زبانهای شی گرا پرداخته شده است. ابتدا با یک مثال ساده، استفاده از اجزا و قطعات کوچکتر برای تولید یک موجودیت بزرگتر در سختافزار و نرمافزار با هم مقایسه شدهاند و سپس برای روشن شدن دلیل استفاده از شی گرایی، زبانهای برنامه نویسی سنتی یا رویهگرا (Procedural) شرح داده شدهاند. پس از آن، به معرفی مفهوم برنامه نویسی شی گرا در C++ و سایر زبانهای شی گرا و شرح ویژگیهای آن پرداخته شده است.
اگر فردی بخواهد کامپیوتر شخصی خودش را سرهم (مونتاژ) کند، به فروشگاههای قطعات سختافزار کامپیوتر مراجعه خواهد کرد و یک مادربرد، پردازنده، چند RAM، یک هارد دیسک، کیس، منبع تغذیه و سایر قطعات را خریداری میکند و آنها را سرهمبندی خواهد کرد. پس از آن، کامپیوتر را به برق وصل میکند و PC روشن میشود. این فرد دیگر نگرانی بابت این مسئله ندارد که آیا مادربورد چهار لایه یا شش لایه است یا آیا هارد دیسک چهار صفحه دارد یا شش صفحه یا اینکه ضخامت آن سه یا پنج اینچ است. البته، باید مطمئن شد که رابطها با هم همخوانی داشته باشند. به عنوان مثال، در صورتی که مادربورد تنها از رابط IDE پشتیبانی میکند، باید اطمینان حاصل کرد که به جای رابط SCSI، یک هارد دیسک با رابط IDE خریداری شود.
مطالعه ادامه مطلب 👇👇
🔗 برنامه نویسی شی گرا در C++ — آموزش رایگان، به زبان ساده و جامع — کلیک کنید (+)
📌 کانال اختصاصی آموزشی برنامهنویسی
آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇
@FaraProg — مطالب و آموزشهای برنامهنویسی فرادرس
✳️ بهترین زبان های برنامه نویسی سال ۱۴۰۰ یا ۲۰۲۱ — راهنمای کاربردی
در دنیای مدرن امروزی، نیاز به برنامه نویسان کامپیوتر روز به روز بیشتر میشود. همه چیز به لحاظ دیجیتال در حال تغییر و تحول است. با توجه به نرخ بالای تعداد افرادی که وارد عرصه برنامه نویسی میشوند، این میزان از گسترش و پیشرفت سریع تکنولوژی به هیچ عنوان تعجبآور نیست. وجه مشترک همه رشتهها و زیر رشتههای مرتبط با علوم کامپیوتر و فناوری، روند نوشتن دستورالعملها در قالب کُد است که به آن برنامه نویسی گفته میشود. برنامه نویسی قلب علوم کامپیوتر به حساب میآید و پایه و اساس بسیاری از علوم و رشتههای دیگر نیز شمرده میشود. با سه رقمی شدن تعداد زبان های برنامه نویسی و همچنین کاربرد متفاوت هر یک از این زبانها، انتخاب یکی از آنها برای یک هدف و پروژه خاص میتواند بسیار گیجکننده و دلهرهآور باشد. این مطلب، با هدف سادهسازی فرآیند انتخاب یک زبان برنامه نویسی مناسب و همچنین، معرفی بهترین زبان های برنامه نویسی سال ۱۴۰۰ یا ۲۰۲۱ تهیه شده است.
══ فهرست مطالب ══
○ سوالات رایج پیرامون انتخاب زبان برنامه نویسی مناسب
○ زبان برنامه نویسی پایتون (Python)
○ زبان برنامه نویسی جاوا اسکریپت (JavaScript)
○ جاوا (Java)
○ C و ++C
○ سی شارپ
○ Golang
○ زبان برنامه نویسی R
○ PHP — پی اچ پی
○ Swift — سوئیفت
○ زبان برنامه نویسی Kotlin (کاتلین)
○ جمعبندی: بهترین زبان های برنامه نویسی سال ۱۴۰۰ یا ۲۰۲۱ کدامند ؟
🔸 سوالات رایج پیرامون انتخاب زبان برنامه نویسی مناسب
در این بخش از مطلب بهترین زبان های برنامه نویسی سال ۱۴۰۰ یا ۲۰۲۱ به برخی از سوالات رایج پیرامون انتخاب زبان برنامه نویسی مناسب پرداخته شده است.
زبانی برای یادگیری مناسب است که مورد علاقه فرد باشد. چون با شروع یادگیری مدت زمان مشخصی باید صرف آموزش شود. انتخاب یک زبان برنامه نویسی برای یادگیری فقط به این دلیل که محبوبیت دارد، دلیل معقولی به نظر نمیرسد. اگر علاقه لازم به آن زبان یا کاربردهای آن وجود نداشته باشد، انگیزه یادگیری از بین خواهد رفت. بنابراین، بهتر است قبل از انتخاب مسیر شغلی و انتخاب یک زبان برنامه نویسی، تحقیق و بررسی کافی به عمل آید.
میتوان بهترین زبان های برنامه نویسی سال ۱۴۰۰ یا ۲۰۲۱ را زبانهای پایتون، جاوا اسکریپت، جاوا، C/C++، سیشارپ، PHP ،Golang، سوئیفت و کاتلین دانست. اما مهمترین مسئله در انتخاب زبان برنامه نویسی مناسب، هدف از یادگیری آن زبان است و اینکه فرد قصد دارد چه مسیر شغلی و حرفهای را در پیش بگیرد. به عنوان مثال در صورتی که هدف شروع مسیر شغلی دانشمند داده باشد، زبان پایتون و R از جمله بهترین زبان های برنامه نویسی در این حوزه به حساب میآیند و یا در صورتی که هدف تبدیل شدن به یک توسعهدهنده فرانتاند باشد، یادگیری و آموزش زبان جاوا اسکریپت بسیار اهمیت دارد.
🔸 زبان برنامه نویسی پایتون (Python)
برای افرادی که به تازگی پا به عرصه برنامه نویسی و علوم کامپیوتر گذاشتهاند و حتی برای آن دسته از افرادی که تجربه کار با پایتون را داشتهاند، زبان برنامه نویسی پایتون یکی از بهترین زبان های برنامه نویسی است که هر برنامه نویسی با آن احساس راحتی خواهد داشت. این زبان دارای نحو (Syntax) واضح و یادگیری آن بسیار ساده است. این مسئله، پایتون را تبدیل به یک انتخاب محبوب و رایج، هم در میان مبتدیان و هم افراد متخصص کرده است.
نقطه مثبت پایتون این است که، به عنوان یکی از بهترین زبان های برنامه نویسی، کاملاً همهمنظوره و تطبیقپذیر است و میتوان از پایتون تقریباً در همه جا استفاده کرد. چه قصد کار بر روی کاربردهای بکاند یک وبسایت وجود داشته باشد و چه هدف، توسعه بکاند یک برنامه کاربردی تلفن همراه باشد، میتوان از پایتون استفاده کرد.
همچنین، پایتون در علم داده به میزان گستردهای مورد استفاده قرار میگیرد. پایتون، یکی از بهترین زبان های برنامه نویسی است که بهکارگیری آن در حوزههای یادگیری ماشین، یادگیری عمیق، هوش مصنوعی و سایر زمینههای علم داده ترجیح داده میشود. با توجه به اینکه کسب و کارها و شرکتها به کسب بینش (Insight) با تحلیل دادهها و استفاده از نتایج آن برای رشد و گسترش بازار خود روی آوردهاند، علم داده تبدیل به یکی از داغترین موضوعات این روزها شده است.
مطالعه ادامه مطلب 👇👇
🔗 بهترین زبان های برنامه نویسی سال ۱۴۰۰ یا ۲۰۲۱ — راهنمای کاربردی — کلیک کنید (+)
📌 کانال اختصاصی آموزشی برنامهنویسی
آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇
@FaraProg — مطالب و آموزشهای برنامهنویسی فرادرس
در دنیای مدرن امروزی، نیاز به برنامه نویسان کامپیوتر روز به روز بیشتر میشود. همه چیز به لحاظ دیجیتال در حال تغییر و تحول است. با توجه به نرخ بالای تعداد افرادی که وارد عرصه برنامه نویسی میشوند، این میزان از گسترش و پیشرفت سریع تکنولوژی به هیچ عنوان تعجبآور نیست. وجه مشترک همه رشتهها و زیر رشتههای مرتبط با علوم کامپیوتر و فناوری، روند نوشتن دستورالعملها در قالب کُد است که به آن برنامه نویسی گفته میشود. برنامه نویسی قلب علوم کامپیوتر به حساب میآید و پایه و اساس بسیاری از علوم و رشتههای دیگر نیز شمرده میشود. با سه رقمی شدن تعداد زبان های برنامه نویسی و همچنین کاربرد متفاوت هر یک از این زبانها، انتخاب یکی از آنها برای یک هدف و پروژه خاص میتواند بسیار گیجکننده و دلهرهآور باشد. این مطلب، با هدف سادهسازی فرآیند انتخاب یک زبان برنامه نویسی مناسب و همچنین، معرفی بهترین زبان های برنامه نویسی سال ۱۴۰۰ یا ۲۰۲۱ تهیه شده است.
══ فهرست مطالب ══
○ سوالات رایج پیرامون انتخاب زبان برنامه نویسی مناسب
○ زبان برنامه نویسی پایتون (Python)
○ زبان برنامه نویسی جاوا اسکریپت (JavaScript)
○ جاوا (Java)
○ C و ++C
○ سی شارپ
○ Golang
○ زبان برنامه نویسی R
○ PHP — پی اچ پی
○ Swift — سوئیفت
○ زبان برنامه نویسی Kotlin (کاتلین)
○ جمعبندی: بهترین زبان های برنامه نویسی سال ۱۴۰۰ یا ۲۰۲۱ کدامند ؟
🔸 سوالات رایج پیرامون انتخاب زبان برنامه نویسی مناسب
در این بخش از مطلب بهترین زبان های برنامه نویسی سال ۱۴۰۰ یا ۲۰۲۱ به برخی از سوالات رایج پیرامون انتخاب زبان برنامه نویسی مناسب پرداخته شده است.
زبانی برای یادگیری مناسب است که مورد علاقه فرد باشد. چون با شروع یادگیری مدت زمان مشخصی باید صرف آموزش شود. انتخاب یک زبان برنامه نویسی برای یادگیری فقط به این دلیل که محبوبیت دارد، دلیل معقولی به نظر نمیرسد. اگر علاقه لازم به آن زبان یا کاربردهای آن وجود نداشته باشد، انگیزه یادگیری از بین خواهد رفت. بنابراین، بهتر است قبل از انتخاب مسیر شغلی و انتخاب یک زبان برنامه نویسی، تحقیق و بررسی کافی به عمل آید.
میتوان بهترین زبان های برنامه نویسی سال ۱۴۰۰ یا ۲۰۲۱ را زبانهای پایتون، جاوا اسکریپت، جاوا، C/C++، سیشارپ، PHP ،Golang، سوئیفت و کاتلین دانست. اما مهمترین مسئله در انتخاب زبان برنامه نویسی مناسب، هدف از یادگیری آن زبان است و اینکه فرد قصد دارد چه مسیر شغلی و حرفهای را در پیش بگیرد. به عنوان مثال در صورتی که هدف شروع مسیر شغلی دانشمند داده باشد، زبان پایتون و R از جمله بهترین زبان های برنامه نویسی در این حوزه به حساب میآیند و یا در صورتی که هدف تبدیل شدن به یک توسعهدهنده فرانتاند باشد، یادگیری و آموزش زبان جاوا اسکریپت بسیار اهمیت دارد.
🔸 زبان برنامه نویسی پایتون (Python)
برای افرادی که به تازگی پا به عرصه برنامه نویسی و علوم کامپیوتر گذاشتهاند و حتی برای آن دسته از افرادی که تجربه کار با پایتون را داشتهاند، زبان برنامه نویسی پایتون یکی از بهترین زبان های برنامه نویسی است که هر برنامه نویسی با آن احساس راحتی خواهد داشت. این زبان دارای نحو (Syntax) واضح و یادگیری آن بسیار ساده است. این مسئله، پایتون را تبدیل به یک انتخاب محبوب و رایج، هم در میان مبتدیان و هم افراد متخصص کرده است.
نقطه مثبت پایتون این است که، به عنوان یکی از بهترین زبان های برنامه نویسی، کاملاً همهمنظوره و تطبیقپذیر است و میتوان از پایتون تقریباً در همه جا استفاده کرد. چه قصد کار بر روی کاربردهای بکاند یک وبسایت وجود داشته باشد و چه هدف، توسعه بکاند یک برنامه کاربردی تلفن همراه باشد، میتوان از پایتون استفاده کرد.
همچنین، پایتون در علم داده به میزان گستردهای مورد استفاده قرار میگیرد. پایتون، یکی از بهترین زبان های برنامه نویسی است که بهکارگیری آن در حوزههای یادگیری ماشین، یادگیری عمیق، هوش مصنوعی و سایر زمینههای علم داده ترجیح داده میشود. با توجه به اینکه کسب و کارها و شرکتها به کسب بینش (Insight) با تحلیل دادهها و استفاده از نتایج آن برای رشد و گسترش بازار خود روی آوردهاند، علم داده تبدیل به یکی از داغترین موضوعات این روزها شده است.
مطالعه ادامه مطلب 👇👇
🔗 بهترین زبان های برنامه نویسی سال ۱۴۰۰ یا ۲۰۲۱ — راهنمای کاربردی — کلیک کنید (+)
📌 کانال اختصاصی آموزشی برنامهنویسی
آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇
@FaraProg — مطالب و آموزشهای برنامهنویسی فرادرس
❇️ اصول کدنویسی که همه باید بدانند
اگر از ۱۰ برنامهنویس بپرسید که برای بهبود برنامهنویسی چه باید کرد، ۱۰ پاسخ متفاوت دریافت خواهید کرد. با این که این پاسخها ممکن است با جملهبندیهای متفاوتی بیان شده باشند، اما همه آنها واجد یک معنای مشترک هستند.
یک برنامهنویس خوب، برنامهنویسی است که امکان درک مشکل را داشته باشد، یک راهحل معقول ارائه کند، بتواند این راهحل را به روشی سریع به کاربر نهایی عرضه نماید و برای نیل به این مقصود بتواند به عنوان عضوی از یک تیم کار کند.
چطور میتوان کد عظیمی که افراد زیادی در آن مشارکت دارند را مدیریت کرد؟ از هر عضو مشارکتکننده انتظار میرود که کدی تمیز و قابل نگهداری بنویسد. به این منظور باید از اصول کدنویسی خاصی پیروی کرد. این مفاهیم موجب تسهیل امور برای همگان میشود.
🔹 فهرست مطالب این نوشته
▫️ ابزارهای مناسب برای پیادهسازی اصول
▫️ اصل مسئولیت منفرد
▫️ کد تمیز بهتر از کد هوشمندانه است
▫️ قانون دیمیتر
▫️ اصل YAGNI
▫️ جمعبندی
🔸 ابزارهای مناسب برای پیادهسازی اصول
برخی ابزارها وجود دارند که موجب میشوند پیگیری مفاهیم آسانتر شوند و معالأسف این موضوع چندان که شایسته است مورد بحث قرار نمیگیرد. برای نمونه توسعهدهندگان فرانتاند از هابهای کامپوننت ابری مانند Bit.dev برای انتشار کامپوننتهای مستقل استفاده میکنند. این هابها به دلایل زیر به پیگیری اصول برنامهنویسی صحیح کمک میکنند.
امکان انتشار آزادانه کامپوننتها از هر کدبیس وجود دارد. یعنی کد بیشتری اشتراک یافته و مورد استفاده مجدد قرار میگیرد. این وضعیت به رعایت اصل DRY کمک میکند. همچنین به این معنی است که لازم نیست یک سیستم طراحی را مجدداً به طور کامل با کامپوننتهای UI که هرگز استفاده نخواهید کرد بسازید. بلکه به جای آن میتوانید هر کامپوننت را بسازید و تنها زمانی که نیاز دارید آنها منتشر کنید که به رعایت اصل YAGNI کمک میکند.
ساخت کامپوننتها به صورت بخشهای مستقل کد به منظور انتشار، استفاده مجدد و مشارکت تیمی به طور طبیعی کمک میکند که هر توسعهدهندهای از اصل «مسئولیت منفرد» (Single Responsibility) آگاه شود.
🔸 اصل مسئولیت منفرد
زمانی که شروع به کدنویسی میکنید، در طی دورههای زمانی بلندمدت کد شلوغ میشود. اغلب در کد خود کلاسها یا ماژولهایی داریم که چندین کارکرد را اجرا میکنند. این وضعیت در نهایت منجر به ایجاد کلاسهایی میشود که از صدها یا هزاران خط کد تشکیل یافتهاند.
اصل «مسئولیت منفرد» (Single Responsibility) بیان میکند که هر کلاس یا ماژول در برنامه باید کارکرد خاصی داشته باشد. به بیان دیگر یک کلاس یا ماژول در برنامه باید تنها مسئول وظایفی در رابط به با یک کارکرد خاص باشد. این وضعیت به کوچک و تمیز ماندن ماژولها کمک میکند.
🔸 کد تمیز بهتر از کد هوشمندانه است
زمانی که مشغول نوشتن برنامه هستیم، معمولاً این میل را داریم که میزان هوشمندانه بودن کد خود را به رخ بکشیم. کد هوشمندانه ممکن است در عمل به جای یک کد قابل درک به صورت یک مانع به نظر برسد.
خواننده باید بسیار هوشمند باشد تا بفهمد یک قطعه کد هوشمندانه چه کاری انجام میدهد و نوشتن این نوع کدها هرگز خوب نیست. هیچ کس واقعاً به میزان هوشمندانه بودن یک کد تا زمانی که تمیز و برای درک همه افراد ساده است، اهمیتی نمیدهد.
ادامه این مطلب رایگان را در مجله فرادرس در لینک زیر بخوانید.
🔗 اصول کدنویسی که همه باید بدانند — راهنمای کاربردی — کلیک کنید.
📌 کانال اختصاصی آموزشهای رایگان برنامهنویسی
آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی برنامهنویسی فرادرس [@FaraProg] دنبال کنید. 👇
@FaraProg — مطالب و آموزشهای برنامهنویسی فرادرس
❇️ اصول کدنویسی که همه باید بدانند
اگر از ۱۰ برنامهنویس بپرسید که برای بهبود برنامهنویسی چه باید کرد، ۱۰ پاسخ متفاوت دریافت خواهید کرد. با این که این پاسخها ممکن است با جملهبندیهای متفاوتی بیان شده باشند، اما همه آنها واجد یک معنای مشترک هستند.
یک برنامهنویس خوب، برنامهنویسی است که امکان درک مشکل را داشته باشد، یک راهحل معقول ارائه کند، بتواند این راهحل را به روشی سریع به کاربر نهایی عرضه نماید و برای نیل به این مقصود بتواند به عنوان عضوی از یک تیم کار کند.
چطور میتوان کد عظیمی که افراد زیادی در آن مشارکت دارند را مدیریت کرد؟ از هر عضو مشارکتکننده انتظار میرود که کدی تمیز و قابل نگهداری بنویسد. به این منظور باید از اصول کدنویسی خاصی پیروی کرد. این مفاهیم موجب تسهیل امور برای همگان میشود.
🔹 فهرست مطالب این نوشته
▫️ ابزارهای مناسب برای پیادهسازی اصول
▫️ اصل مسئولیت منفرد
▫️ کد تمیز بهتر از کد هوشمندانه است
▫️ قانون دیمیتر
▫️ اصل YAGNI
▫️ جمعبندی
🔸 ابزارهای مناسب برای پیادهسازی اصول
برخی ابزارها وجود دارند که موجب میشوند پیگیری مفاهیم آسانتر شوند و معالأسف این موضوع چندان که شایسته است مورد بحث قرار نمیگیرد. برای نمونه توسعهدهندگان فرانتاند از هابهای کامپوننت ابری مانند Bit.dev برای انتشار کامپوننتهای مستقل استفاده میکنند. این هابها به دلایل زیر به پیگیری اصول برنامهنویسی صحیح کمک میکنند.
امکان انتشار آزادانه کامپوننتها از هر کدبیس وجود دارد. یعنی کد بیشتری اشتراک یافته و مورد استفاده مجدد قرار میگیرد. این وضعیت به رعایت اصل DRY کمک میکند. همچنین به این معنی است که لازم نیست یک سیستم طراحی را مجدداً به طور کامل با کامپوننتهای UI که هرگز استفاده نخواهید کرد بسازید. بلکه به جای آن میتوانید هر کامپوننت را بسازید و تنها زمانی که نیاز دارید آنها منتشر کنید که به رعایت اصل YAGNI کمک میکند.
ساخت کامپوننتها به صورت بخشهای مستقل کد به منظور انتشار، استفاده مجدد و مشارکت تیمی به طور طبیعی کمک میکند که هر توسعهدهندهای از اصل «مسئولیت منفرد» (Single Responsibility) آگاه شود.
🔸 اصل مسئولیت منفرد
زمانی که شروع به کدنویسی میکنید، در طی دورههای زمانی بلندمدت کد شلوغ میشود. اغلب در کد خود کلاسها یا ماژولهایی داریم که چندین کارکرد را اجرا میکنند. این وضعیت در نهایت منجر به ایجاد کلاسهایی میشود که از صدها یا هزاران خط کد تشکیل یافتهاند.
اصل «مسئولیت منفرد» (Single Responsibility) بیان میکند که هر کلاس یا ماژول در برنامه باید کارکرد خاصی داشته باشد. به بیان دیگر یک کلاس یا ماژول در برنامه باید تنها مسئول وظایفی در رابط به با یک کارکرد خاص باشد. این وضعیت به کوچک و تمیز ماندن ماژولها کمک میکند.
🔸 کد تمیز بهتر از کد هوشمندانه است
زمانی که مشغول نوشتن برنامه هستیم، معمولاً این میل را داریم که میزان هوشمندانه بودن کد خود را به رخ بکشیم. کد هوشمندانه ممکن است در عمل به جای یک کد قابل درک به صورت یک مانع به نظر برسد.
خواننده باید بسیار هوشمند باشد تا بفهمد یک قطعه کد هوشمندانه چه کاری انجام میدهد و نوشتن این نوع کدها هرگز خوب نیست. هیچ کس واقعاً به میزان هوشمندانه بودن یک کد تا زمانی که تمیز و برای درک همه افراد ساده است، اهمیتی نمیدهد.
ادامه این مطلب رایگان را در مجله فرادرس در لینک زیر بخوانید.
🔗 اصول کدنویسی که همه باید بدانند — راهنمای کاربردی — کلیک کنید.
📌 کانال اختصاصی آموزشهای رایگان برنامهنویسی
آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی برنامهنویسی فرادرس [@FaraProg] دنبال کنید. 👇
@FaraProg — مطالب و آموزشهای برنامهنویسی فرادرس
✳️ مبانی برنامه نویسی – آشنایی با ساختار و مولفههای یک زبان برنامه نویسی
در این آموزش، در خصوص مبانی برنامه نویسی صحبت میکنیم و با ساختار یک زبان برنامه نویسی آشنا خواهیم شد. در ابتدا، لزوم آشنایی با مباحث ابتدایی در مبانی برنامه نویسی مطرح میشود و مفاهیم اساسی زبانهای برنامه نویسی را یاد میگیریم. همچنین در خصوص مولفههای یک زبان برنامه نویسی به بحث میپردازیم.
══ فهرست مطالب ══
○ چرا از کامپیوتر استفاده می کنیم؟
○ سیستم عامل چیست؟ برنامه کاربردی کدام است؟
○ چرا نیاز داریم یک برنامه ی کاربردی را خلق کنیم؟
○ به چه چیزهایی کامپیوتر می گویند؟
○ برنامه نویسی چیست؟
○ به چه زبانی میتوانیم با کامپیوتر صحبت کنیم؟
○ برنامه نویسی چگونه آغاز شد؟
○ چرا برای هر زبان سطح تعیین می شود؟
○ زبانهای برنامهنویسی سطح بالا
○ مبانی برنامه نویسی و خالق زبانِ C
○ نحوه قابل فهم شدن زبان برای سخت افزار
🔸 چرا از کامپیوتر استفاده می کنیم؟
هر سیستم کامپیوتر از سختافزار (hardware) و نرمافزار (software) تشکیل شده است که میتوان آن را به جسم و روح تشبیه کرد و ما با داشتن این دو در کنار هم میتوانیم یک کامپیوتر در اختیار داشته باشیم. کامپیوترها مانند ما انسانها دچار خستگی یا فراموشی نمی شوند و میتوانند عملیات پردازشی گوناگون را هزاران بار (در صورت عدم وجود مشکل فیزیکی) انجام دهند.
انسان به سه دلیل کامپیوتر را اختراع کرد:
– دقت
– سرعت
– عدم خستگی کامپیوتر
دلایلی که انسان در تامین کامل آنها دچار مشکل است اما در مقابل کامپیوتر نیز دچار خلاءهایی است، به عنوان مثال کامپیوتر ها نمیتوانند مانند انسان دارای خلاقیت باشند چون خلاقیت نیاز مستقیم به هوشِ انسانی دارد. اگرچه در سالیان اخیر تلاشهای مستمری در زمینهی ساختِ هوشِ مصنوعی در کامپیوتر صورت گرفته است، اما پیاده کردن این پروژه به دلیلِ وجود فرآیندهای بسیار پیچیده در مغز انسان زمان بر خواهد بود و اکنون در دسترس نیست.
🔸 سیستم عامل چیست؟ برنامه کاربردی کدام است؟
فهمیدیم که کامپیوتر بدون نرمافزار به مانند یک جسم بی جان است و از آن نمیتوان استفاده نمود، همینطور که نرمافزار بدون سختافزار بلا استفاده است. بخش مهمی از قسمت نرمافزاری یک کامپیوتر را سیستم عامل تشکیل می دهد. چیزی که معمولاً کاربران آن را می خرند و به ندرت یافت می شود که کسی سیستم عامل را ایجاد کند، گرچه امکانِ آن هست و غیرممکن نیست اما غالباً تیمهای فوق حرفهای به ساختِ یک سیستم عامل می پردازند و تمرکز ما بر روی برنامههای کاربردی است. برنامههای کاربردی بر روی سیستم عامل نصب و به کمک سیستم عامل بر روی سختافزار اجرا می شوند. در مورد برنامه کاربردی دو حالت وجود دارد، میتوان آن را خرید و استفاده کرد، همینطور میتوان آن را از پایه نوشت و ایجاد کرد.
مطالعه ادامه مطلب 👇👇
🔗 مبانی برنامه نویسی – آشنایی با ساختار و مولفههای یک زبان برنامه نویسی — کلیک کنید (+)
📌 کانال اختصاصی آموزشی برنامهنویسی
آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇
@FaraProg — مطالب و آموزشهای برنامهنویسی فرادرس
در این آموزش، در خصوص مبانی برنامه نویسی صحبت میکنیم و با ساختار یک زبان برنامه نویسی آشنا خواهیم شد. در ابتدا، لزوم آشنایی با مباحث ابتدایی در مبانی برنامه نویسی مطرح میشود و مفاهیم اساسی زبانهای برنامه نویسی را یاد میگیریم. همچنین در خصوص مولفههای یک زبان برنامه نویسی به بحث میپردازیم.
══ فهرست مطالب ══
○ چرا از کامپیوتر استفاده می کنیم؟
○ سیستم عامل چیست؟ برنامه کاربردی کدام است؟
○ چرا نیاز داریم یک برنامه ی کاربردی را خلق کنیم؟
○ به چه چیزهایی کامپیوتر می گویند؟
○ برنامه نویسی چیست؟
○ به چه زبانی میتوانیم با کامپیوتر صحبت کنیم؟
○ برنامه نویسی چگونه آغاز شد؟
○ چرا برای هر زبان سطح تعیین می شود؟
○ زبانهای برنامهنویسی سطح بالا
○ مبانی برنامه نویسی و خالق زبانِ C
○ نحوه قابل فهم شدن زبان برای سخت افزار
🔸 چرا از کامپیوتر استفاده می کنیم؟
هر سیستم کامپیوتر از سختافزار (hardware) و نرمافزار (software) تشکیل شده است که میتوان آن را به جسم و روح تشبیه کرد و ما با داشتن این دو در کنار هم میتوانیم یک کامپیوتر در اختیار داشته باشیم. کامپیوترها مانند ما انسانها دچار خستگی یا فراموشی نمی شوند و میتوانند عملیات پردازشی گوناگون را هزاران بار (در صورت عدم وجود مشکل فیزیکی) انجام دهند.
انسان به سه دلیل کامپیوتر را اختراع کرد:
– دقت
– سرعت
– عدم خستگی کامپیوتر
دلایلی که انسان در تامین کامل آنها دچار مشکل است اما در مقابل کامپیوتر نیز دچار خلاءهایی است، به عنوان مثال کامپیوتر ها نمیتوانند مانند انسان دارای خلاقیت باشند چون خلاقیت نیاز مستقیم به هوشِ انسانی دارد. اگرچه در سالیان اخیر تلاشهای مستمری در زمینهی ساختِ هوشِ مصنوعی در کامپیوتر صورت گرفته است، اما پیاده کردن این پروژه به دلیلِ وجود فرآیندهای بسیار پیچیده در مغز انسان زمان بر خواهد بود و اکنون در دسترس نیست.
🔸 سیستم عامل چیست؟ برنامه کاربردی کدام است؟
فهمیدیم که کامپیوتر بدون نرمافزار به مانند یک جسم بی جان است و از آن نمیتوان استفاده نمود، همینطور که نرمافزار بدون سختافزار بلا استفاده است. بخش مهمی از قسمت نرمافزاری یک کامپیوتر را سیستم عامل تشکیل می دهد. چیزی که معمولاً کاربران آن را می خرند و به ندرت یافت می شود که کسی سیستم عامل را ایجاد کند، گرچه امکانِ آن هست و غیرممکن نیست اما غالباً تیمهای فوق حرفهای به ساختِ یک سیستم عامل می پردازند و تمرکز ما بر روی برنامههای کاربردی است. برنامههای کاربردی بر روی سیستم عامل نصب و به کمک سیستم عامل بر روی سختافزار اجرا می شوند. در مورد برنامه کاربردی دو حالت وجود دارد، میتوان آن را خرید و استفاده کرد، همینطور میتوان آن را از پایه نوشت و ایجاد کرد.
مطالعه ادامه مطلب 👇👇
🔗 مبانی برنامه نویسی – آشنایی با ساختار و مولفههای یک زبان برنامه نویسی — کلیک کنید (+)
📌 کانال اختصاصی آموزشی برنامهنویسی
آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇
@FaraProg — مطالب و آموزشهای برنامهنویسی فرادرس
✳️ برنامه نویس فرانت اند ، بک اند و فول استک دولوپر — وظایف، مهارت ها و درآمد
ممکن است برای علاقهمندانی که قصد انتخاب یک مسیر شغلی در زمینه برنامهنویسی و توسعه وب را دارند، این سئوال به وجود بیاید که توسعهدهنده فرانتاند (Front-End Developer)، توسعهدهنده بکاند (Back-End Developer) و توسعهدهنده فولاستک (Full Stack Developer) که هستند، روزانه چه کارهایی انجام میدهند، چه مهارتها و چه وظایفی دارند؟ در مطلب برنامه نویس فرانت اند ، بک اند و فول استک دولوپر این سه موقعیت شغلی که در واقع انواع نقشهای شغلی توسعه دهنده وب هستند، به طور کامل مورد بررسی قرار گرفتهاند و مهارتهای لازم برای هر یک از این جایگاههای شغلی، وظایفت، حوزه های کاری و درآمد آنها بررسی و با یکدیگر مقایسه شده است.
══ فهرست مطالب ══
○ برنامه نویس فرانت اند ، بک اند و فول استک دولوپر کیست؟
○ توسعه دهنده فرانت اند (Front-End) چه کسی است؟
○ توسعه دهنده بک اند (Back-End) چه کسی است؟
○ توسعه دهنده فول استک (Full Stack) چه کسی است؟
○ منابع آموزشی برای توسعهدهندگان فرانت اند، بک اند و فول استک
○ مقایسه میزان درآمد توسعهدهندگان فرانت اند، بک اند و فول استک
○ جمعبندی
🔸 برنامه نویس فرانت اند ، بک اند و فول استک دولوپر کیست؟
تصور کنید کاربر یک صفحه جدید در مرورگر را باز میکند، آدرس سایت مورد نظر خودش را در قسمت نوار آدرس وارد میکند، کلید اینتر را میزند؛ سایت به سرعت باز میشود و قالب و طراحی گرافیکی سایت توجه مخاطب را جلب میکند. صفحه باز شده معمولا ساختاری استاندارد و ویژگیهای بصری قابل توجهی دارد. در واقع، این توسعهدهندگان وب هستند که مسئولیت تولید و ایجاد چنین محصول باکیفیت و با تجربهکاربری دلپذیری را برعهده دارند.
تا دی ماه ۱۴۰۰، بیش از ۱٫۵ میلیارد وبسایت در جهان ایجاد شده و همچنان این تعداد در حال افزایش است. بنابراین، امنیت شغلی قدرتمندی برای توسعهدهندگان وب و در واقع افراد فعال در زمینه کدنویسی، ساخت، آنالیز و نگهداری صفحات وب وجود دارد. در دنیای رقابتی امروز، وبسایتها یکی از حیاتیترین اجزاء برای هر کسبوکاری محسوب میشوند. با توجه به این که روندها و الگوهای توسعه وب به طور مرتب و با سرعت بالایی در حال تغییر هستند، فعلا کمبودی در خصوص فرصتهای شغلی برای توسعهدهندگان وجود ندارد.
سوال اصلی که در این وهله مطرح میشود این است که آموزش دیدن و آماده شدن برای چه نوع موقعیت شغلی در حوزه توسعه وب بهتر است؟ با مراجعه به سایتهای کاریابی و یا بررسی دورههای آموزشی آنلاین موجود در اینترنت، مشخص میشود که نقشهای شغلی حوزه توسعه وب به سه دسته اصلی تقسیم میشود: فرانتاند (Front-End)، بکاند (Back-End) و فولاستک (Full Stack).
🔸 توسعه دهنده فرانت اند (Front-End) چه کسی است؟
در این بخش از مطلب برنامه نویس فرانت اند ، بک اند و فول استک دولوپر به این پرسش پاسخ داده میشود که توسعه دهنده فرانت اند (Front-End) چه کسی است؟ ظاهر و بخش بیرونی یک وبسایت، قسمتی است که کاربران با آن به تعامل میپردازند. تمام آنچه که هنگام پیمایش در اینترنت دیده میشود، از فونتها و رنگها گرفته تا منوهای کشویی و اسلایدرها (Slider)، ترکیبی از سیاساس (CSS)، اچتیامال و جاوا اسکریپت هستند. این مولفههای بصری که میتوان آنها را بخشی از «تجربهکاربری» (User Experience) دانست، در سیستم کاربر به وسیله «مرورگر وب» (Web Browser) کنترل میشوند.
– None
در این بخش از مطلب برنامه نویس فرانت اند ، بک اند و فول استک به پرسش «ابزارها و مهارتهای مورد نیاز توسعه دهنده فرانت اند چیست؟» پاسخ داده شده است. توسعهدهندگان فرانتاند، مسئولیت تولید کدهای سمت کاربر و معماری تجربهکاربری همهجانبه آن را برعهده دارند. برای عملی کردن این اهداف، توسعهدهندگان فرانتاند باید در سه مهارت کلیدی اچتیامال، سیاساس و برنامهنویسی جاوا اسکریپت تسلط داشته باشند.
علاوه بر نیاز به تسلط بر این سه زبان، لازم است توسعهدهندگان با فریمورکهایی چون بوتاسترپ (Bootstrap)، فاندیشن (Foundation)، بکبون (Backbone)، انگولارجیاس (AngularJs) و امبرجیاس (EmberJS) آشنایی داشته باشند. این فریمورکها مستقل از نوع دستگاه مورد استفاده، ارائه محتوا با ظاهری آراسته و زیبا را تضمین میکنند.
مطالعه ادامه مطلب 👇👇
🔗 برنامه نویس فرانت اند ، بک اند و فول استک دولوپر — وظایف، مهارت ها و درآمد — کلیک کنید (+)
📌 کانال اختصاصی آموزشی برنامهنویسی
آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇
@FaraProg — مطالب و آموزشهای برنامهنویسی فرادرس
ممکن است برای علاقهمندانی که قصد انتخاب یک مسیر شغلی در زمینه برنامهنویسی و توسعه وب را دارند، این سئوال به وجود بیاید که توسعهدهنده فرانتاند (Front-End Developer)، توسعهدهنده بکاند (Back-End Developer) و توسعهدهنده فولاستک (Full Stack Developer) که هستند، روزانه چه کارهایی انجام میدهند، چه مهارتها و چه وظایفی دارند؟ در مطلب برنامه نویس فرانت اند ، بک اند و فول استک دولوپر این سه موقعیت شغلی که در واقع انواع نقشهای شغلی توسعه دهنده وب هستند، به طور کامل مورد بررسی قرار گرفتهاند و مهارتهای لازم برای هر یک از این جایگاههای شغلی، وظایفت، حوزه های کاری و درآمد آنها بررسی و با یکدیگر مقایسه شده است.
══ فهرست مطالب ══
○ برنامه نویس فرانت اند ، بک اند و فول استک دولوپر کیست؟
○ توسعه دهنده فرانت اند (Front-End) چه کسی است؟
○ توسعه دهنده بک اند (Back-End) چه کسی است؟
○ توسعه دهنده فول استک (Full Stack) چه کسی است؟
○ منابع آموزشی برای توسعهدهندگان فرانت اند، بک اند و فول استک
○ مقایسه میزان درآمد توسعهدهندگان فرانت اند، بک اند و فول استک
○ جمعبندی
🔸 برنامه نویس فرانت اند ، بک اند و فول استک دولوپر کیست؟
تصور کنید کاربر یک صفحه جدید در مرورگر را باز میکند، آدرس سایت مورد نظر خودش را در قسمت نوار آدرس وارد میکند، کلید اینتر را میزند؛ سایت به سرعت باز میشود و قالب و طراحی گرافیکی سایت توجه مخاطب را جلب میکند. صفحه باز شده معمولا ساختاری استاندارد و ویژگیهای بصری قابل توجهی دارد. در واقع، این توسعهدهندگان وب هستند که مسئولیت تولید و ایجاد چنین محصول باکیفیت و با تجربهکاربری دلپذیری را برعهده دارند.
تا دی ماه ۱۴۰۰، بیش از ۱٫۵ میلیارد وبسایت در جهان ایجاد شده و همچنان این تعداد در حال افزایش است. بنابراین، امنیت شغلی قدرتمندی برای توسعهدهندگان وب و در واقع افراد فعال در زمینه کدنویسی، ساخت، آنالیز و نگهداری صفحات وب وجود دارد. در دنیای رقابتی امروز، وبسایتها یکی از حیاتیترین اجزاء برای هر کسبوکاری محسوب میشوند. با توجه به این که روندها و الگوهای توسعه وب به طور مرتب و با سرعت بالایی در حال تغییر هستند، فعلا کمبودی در خصوص فرصتهای شغلی برای توسعهدهندگان وجود ندارد.
سوال اصلی که در این وهله مطرح میشود این است که آموزش دیدن و آماده شدن برای چه نوع موقعیت شغلی در حوزه توسعه وب بهتر است؟ با مراجعه به سایتهای کاریابی و یا بررسی دورههای آموزشی آنلاین موجود در اینترنت، مشخص میشود که نقشهای شغلی حوزه توسعه وب به سه دسته اصلی تقسیم میشود: فرانتاند (Front-End)، بکاند (Back-End) و فولاستک (Full Stack).
🔸 توسعه دهنده فرانت اند (Front-End) چه کسی است؟
در این بخش از مطلب برنامه نویس فرانت اند ، بک اند و فول استک دولوپر به این پرسش پاسخ داده میشود که توسعه دهنده فرانت اند (Front-End) چه کسی است؟ ظاهر و بخش بیرونی یک وبسایت، قسمتی است که کاربران با آن به تعامل میپردازند. تمام آنچه که هنگام پیمایش در اینترنت دیده میشود، از فونتها و رنگها گرفته تا منوهای کشویی و اسلایدرها (Slider)، ترکیبی از سیاساس (CSS)، اچتیامال و جاوا اسکریپت هستند. این مولفههای بصری که میتوان آنها را بخشی از «تجربهکاربری» (User Experience) دانست، در سیستم کاربر به وسیله «مرورگر وب» (Web Browser) کنترل میشوند.
– None
در این بخش از مطلب برنامه نویس فرانت اند ، بک اند و فول استک به پرسش «ابزارها و مهارتهای مورد نیاز توسعه دهنده فرانت اند چیست؟» پاسخ داده شده است. توسعهدهندگان فرانتاند، مسئولیت تولید کدهای سمت کاربر و معماری تجربهکاربری همهجانبه آن را برعهده دارند. برای عملی کردن این اهداف، توسعهدهندگان فرانتاند باید در سه مهارت کلیدی اچتیامال، سیاساس و برنامهنویسی جاوا اسکریپت تسلط داشته باشند.
علاوه بر نیاز به تسلط بر این سه زبان، لازم است توسعهدهندگان با فریمورکهایی چون بوتاسترپ (Bootstrap)، فاندیشن (Foundation)، بکبون (Backbone)، انگولارجیاس (AngularJs) و امبرجیاس (EmberJS) آشنایی داشته باشند. این فریمورکها مستقل از نوع دستگاه مورد استفاده، ارائه محتوا با ظاهری آراسته و زیبا را تضمین میکنند.
مطالعه ادامه مطلب 👇👇
🔗 برنامه نویس فرانت اند ، بک اند و فول استک دولوپر — وظایف، مهارت ها و درآمد — کلیک کنید (+)
📌 کانال اختصاصی آموزشی برنامهنویسی
آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇
@FaraProg — مطالب و آموزشهای برنامهنویسی فرادرس
👍1
✳️ ۶ عادت خوب برنامه نویسی | راهنمای کاربردی
زمانی که از تبدیل شدن به یک برنامهنویس خوب صحبت میکنیم، برخی عادتهای خاص هستند که بیدرنگ به ذهن متبادر میشوند. برخی عادات وجود دارند که اغلب برنامهنویسان توافق دارند، داشتن آنها مناسب است، اما در عمل اغلب ایشان این عادتها را ندارند. هر آنچه که میدانیم بر اساس عادتهای ما تعریف شده است. برای این که تبدیل یک برنامهنویس خوب بشویم، باید تلاش کنیم برخی عادتهای خوب برنامهنویسی را در خود ایجاد کنیم. در این مقاله با شش عادت خوب برنامه نویسی آشنا میشویم که باید تلاش کنید در خود ایجاد کنید.
══ فهرست مطالب ══
○ ۱. تمیزکاری کد
○ ۲. به فرد بعد از خود فکر کنید
○ ۳. تنها آن چه لازم است و نه بیشتر انجام دهید
○ ۴. برای کد خود طرحریزی داشته باشید
○ ۵. مستندسازی
○ ۶. هرگز از یادگیری دست نکشید
○ سخن پایانی
🔸 ۱. تمیزکاری کد
یک عادت عالی برنامهنویسی این است که هر زمان یک قطعه کد را تغییر میدهید، تلاش کنید آن را بهبود ببخشید. مهم نیست که مشغول اصلاح یک خط کد هستید یا یک قابلیت کاملاً جدید را به کد موجود اضافه میکنید، در هر حال باید در جهت تمیزکاری و بهبود کد تلاش کنید. «رابرت سی. مارتین» (Robert C. Martin) این عادت را در یک نقل قول مشهور به خوبی بیان کرده است:
«همواره کدی که ویرایش میکنید را بهتر از حالت اولیه آن بکنید»
اگر با تعداد موارد جزئی زیادی که میتوانید در زمان خواندن برخی کدها بهبود ببخشید آشنا شوید، شگفتزده خواهید شد. اینها تغییرهایی که میتوانید انجام دهید، شاید به کوچکی تغییر دادن نام یک متغیر یا تابع باشند. کافی است مطمئن شوید که هر زمان دستکم یک بهینهسازی داشتهاید. به این ترتیب همواره کدی که ادیت میکنید را به حالتی بهتر از حالت اصلی آن درمیآورید و تعداد مشکلات کد را به مقدار زیادی بهبود میبخشید.
🔸 ۲. به فرد بعد از خود فکر کنید
هر زمان که یک قطعه کد را مینویسید، باید به توسعهدهنده بعدی که قرار است روی کد شما کار کند، فکر کنید.
کدی بنویسید که قابلیت نگهداری داشته باشد تا توسعهدهندگان بعدی، آن را به سهولت درک کنند و به همان میزان که برای شما خوانا است برای آنها نیز خوانا باشد. نسبت زمانی که برای خواندن یک کد صرف میشود در قیاس با زمان مورد نیاز برای نوشتن کد برابر با ۱۰ به ۱ است! این بدان معنی است که با صرف کمی تلاش بیشتر برای خواناتر ساختن کد، میتوانید صرفهجویی زمانی زیادی ایجاد کنید.
زمانی که میخواهید کدنویسی کنید، رؤیایی فکر نکنید، کد ساده بنویسید تا هر کس آن را خوانده و درک کند. در واقع هیچ نیازی به نوشتن کدهای جادوی تکخطی که از Stack Overflow کپی کردهاید و حتی خودتان هم به درستی درک نمیکنید وجود ندارد.
مطالعه ادامه مطلب 👇👇
🔗 ۶ عادت خوب برنامه نویسی | راهنمای کاربردی — کلیک کنید (+)
📌 کانال اختصاصی آموزشی برنامهنویسی
آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇
@FaraProg — مطالب و آموزشهای برنامهنویسی فرادرس
زمانی که از تبدیل شدن به یک برنامهنویس خوب صحبت میکنیم، برخی عادتهای خاص هستند که بیدرنگ به ذهن متبادر میشوند. برخی عادات وجود دارند که اغلب برنامهنویسان توافق دارند، داشتن آنها مناسب است، اما در عمل اغلب ایشان این عادتها را ندارند. هر آنچه که میدانیم بر اساس عادتهای ما تعریف شده است. برای این که تبدیل یک برنامهنویس خوب بشویم، باید تلاش کنیم برخی عادتهای خوب برنامهنویسی را در خود ایجاد کنیم. در این مقاله با شش عادت خوب برنامه نویسی آشنا میشویم که باید تلاش کنید در خود ایجاد کنید.
══ فهرست مطالب ══
○ ۱. تمیزکاری کد
○ ۲. به فرد بعد از خود فکر کنید
○ ۳. تنها آن چه لازم است و نه بیشتر انجام دهید
○ ۴. برای کد خود طرحریزی داشته باشید
○ ۵. مستندسازی
○ ۶. هرگز از یادگیری دست نکشید
○ سخن پایانی
🔸 ۱. تمیزکاری کد
یک عادت عالی برنامهنویسی این است که هر زمان یک قطعه کد را تغییر میدهید، تلاش کنید آن را بهبود ببخشید. مهم نیست که مشغول اصلاح یک خط کد هستید یا یک قابلیت کاملاً جدید را به کد موجود اضافه میکنید، در هر حال باید در جهت تمیزکاری و بهبود کد تلاش کنید. «رابرت سی. مارتین» (Robert C. Martin) این عادت را در یک نقل قول مشهور به خوبی بیان کرده است:
«همواره کدی که ویرایش میکنید را بهتر از حالت اولیه آن بکنید»
اگر با تعداد موارد جزئی زیادی که میتوانید در زمان خواندن برخی کدها بهبود ببخشید آشنا شوید، شگفتزده خواهید شد. اینها تغییرهایی که میتوانید انجام دهید، شاید به کوچکی تغییر دادن نام یک متغیر یا تابع باشند. کافی است مطمئن شوید که هر زمان دستکم یک بهینهسازی داشتهاید. به این ترتیب همواره کدی که ادیت میکنید را به حالتی بهتر از حالت اصلی آن درمیآورید و تعداد مشکلات کد را به مقدار زیادی بهبود میبخشید.
🔸 ۲. به فرد بعد از خود فکر کنید
هر زمان که یک قطعه کد را مینویسید، باید به توسعهدهنده بعدی که قرار است روی کد شما کار کند، فکر کنید.
کدی بنویسید که قابلیت نگهداری داشته باشد تا توسعهدهندگان بعدی، آن را به سهولت درک کنند و به همان میزان که برای شما خوانا است برای آنها نیز خوانا باشد. نسبت زمانی که برای خواندن یک کد صرف میشود در قیاس با زمان مورد نیاز برای نوشتن کد برابر با ۱۰ به ۱ است! این بدان معنی است که با صرف کمی تلاش بیشتر برای خواناتر ساختن کد، میتوانید صرفهجویی زمانی زیادی ایجاد کنید.
زمانی که میخواهید کدنویسی کنید، رؤیایی فکر نکنید، کد ساده بنویسید تا هر کس آن را خوانده و درک کند. در واقع هیچ نیازی به نوشتن کدهای جادوی تکخطی که از Stack Overflow کپی کردهاید و حتی خودتان هم به درستی درک نمیکنید وجود ندارد.
مطالعه ادامه مطلب 👇👇
🔗 ۶ عادت خوب برنامه نویسی | راهنمای کاربردی — کلیک کنید (+)
📌 کانال اختصاصی آموزشی برنامهنویسی
آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇
@FaraProg — مطالب و آموزشهای برنامهنویسی فرادرس
✳️ ده زبان برنامه نویسی که باید در سال ۱۴۰۰ یاد بگیرید
یکی از بهترین مهارتها در جهان کنونی، برای داشتن جایگاه شغلی و درآمد خوب، «برنامه نویسی کامپیوتری» (Computer Programming) است. امروزه، از کامپیوترها تقریبا در همه صنایع استفاده میشود. این ماشینها، دارای طیف وسیعی از کاربردها از «خلبان خودکار» (Autopilot) در هواپیما گرفته تا «سرعتسنج» (Speedometer) در دوچرخه هستند و در واقع باید گفت کامپیوترها به اشکال گوناگونی ما را احاطه کردهاند. در دهههای اخیر، کامپیوترها نقش اساسی در توسعه بخشیدن به کسبوکارها داشتهاند و دارند. روزگاری که انسانها از کاغذ و خودکار برای ثبت اطلاعات استفاده میکردند دیگر گذشته و امروزه این کارها با بهرهگیری از کامپیوترها انجام میشود. آنچه بیان شد موجب شده تا اهمیت زبانهای برنامهنویسی روز به روز افزایش بیابد و شرکتهای گوناگون (صنایع مختلف) برای پیشبرد اهداف خود نسبت به استخدام افراد مسلط به برنامهنویسی اقدام کنند.
══ فهرست مطالب ══
○ زبان برنامه نویسی پایتون
○ زبان برنامه نویسی جاوا
○ زبان برنامه نویسی C++/C
○ زبان برنامه نویسی جاوا اسکریپت
○ زبان برنامه نویسی گو
○ زبان برنامه نویسی R
○ زبان برنامه نویسی سوئیفت
○ زبان برنامه نویسی پیاچپی
○ زبان برنامه نویسی سیشارپ
○ زبان برنامه نویسی متلب
○ نتیجهگیری
🔸 زبان برنامه نویسی پایتون
«زبان برنامهنویسی پایتون» (Python Programming Language) بدون شک در صدر لیست زبانهایی قرار دارد که برای داشتن یک شغل خوب، باید در سال جدید آموخت. این زبان به طور گستردهای به عنوان بهترین زبان برنامهنویسی که باید آن را به عنوان اولین زبان برنامهنویسی آموخت، انتخاب و پذیرفته شده است. استفاده از زبان پایتون و توسعه برنامه با بهرهگیری از آن ساده است. از پایتون به طور گستردهای برای توسعه برنامههای کاربردی وب مقیاسپذیر استفاده میشود. «یوتیوب» (YouTube)، «اینستاگرام» (Instagram)، «پینترست» (Pinterest)، «سرویمانکی» (SurveyMonkey) از جمله پروژههای بزرگی هستند که با زبان پایتون ساخته شدهاند. پایتون دارای «کتابخانههای» (Libraries) پشتیبان خوب و جامعه توسعهدهندگان بزرگی است.
زبان برنامهنویسی پایتون یک نقطه آغاز خوب برای افراد تازهکار فراهم میکند. بنابراین، به افرادی که به دنبال شغل خوبی هستند، قطعا یادگیری این زبان توصیه میشود. استارتاپهای زیادی از پایتون به عنوان زبان اول و اصلی خود به ویژه برای بکاِند استفاده میکنند و این امر فرصت خوبی را برای برنامهنویسان فول-استک پایتون فراهم میکند. در زیر یک برنامه ساده «سلام دنیا!» یا همان «Hello World!» مشهور قابل مشاهده است.
همانطور که از همین ابتدای راه مشهود است، کد زدن به زبان پایتون ساده است. کلیه افرادی که تمایل دارند به استارتاپها بپیوندند باید پایتون یاد بگیرند. نکته قابل توجه آن است که زبان پایتون کاربرد زیادی در زمینه «علم داده» (Data Science) و «یادگیری ماشین» (Machine Learning) دارد. بنابراین، یادگیری آن برگ برندهای برای کسب فرصتهای شغلی پیشرو و گام برداشتن به سوی آینده است.
🔸 زبان برنامه نویسی جاوا
«جاوا» (Java)، دیگر انتخاب محبوب در سازمانهای بزرگ بوده و هست. این زبان، به طور گسترده برای ساخت برنامههای کاربردی وب در مقیاس کسبوکارهای بزرگ مورد استفاده قرار میگیرد. جاوا به عنوان یک زبان بسیار مقیاسپذیر شناخته شده و بنابراین بسیاری از کسبوکارهای بزرگ آن را پذیرفتهاند و استفاده میکنند. به افرادی که به دنبال توسعه شغلی خود و محیا شدن برای کار در کسبوکارهای بزرگ هستند، یادگیری زبان برنامهنویسی جاوا پیشنهاد میشود.
همچنین، جاوا به طور گستردهای در توسعه برنامههای کاربردی «اندروید» (Android) مورد استفاده قرار میگیرد. امروزه، نظر به این واقعیت که اندروید میلیاردها کاربر دارد، تقریبا همه کسبوکارها نیاز به برنامههای کاربردی اندروید دارند. این امر یک فرصت شغلی قابل توجه را برای توسعه دهندگان جاوا فراهم میکند. البته نباید فراموش کرد که گوگل یک چارچوب توسعه اندروید مبتنی بر جاوا با نام «اندروید استودیو» (Android Studio) تولید کرده است که مسیر را برای کسب درآمد از جاوا برای توسعهدهندگان این زبان هموارتر میکند.
مطالعه ادامه مطلب 👇👇
🔗 ده زبان برنامه نویسی که باید در سال ۱۴۰۰ یاد بگیرید — کلیک کنید (+)
📌 کانال اختصاصی آموزشی برنامهنویسی
آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇
@FaraProg — مطالب و آموزشهای برنامهنویسی فرادرس
یکی از بهترین مهارتها در جهان کنونی، برای داشتن جایگاه شغلی و درآمد خوب، «برنامه نویسی کامپیوتری» (Computer Programming) است. امروزه، از کامپیوترها تقریبا در همه صنایع استفاده میشود. این ماشینها، دارای طیف وسیعی از کاربردها از «خلبان خودکار» (Autopilot) در هواپیما گرفته تا «سرعتسنج» (Speedometer) در دوچرخه هستند و در واقع باید گفت کامپیوترها به اشکال گوناگونی ما را احاطه کردهاند. در دهههای اخیر، کامپیوترها نقش اساسی در توسعه بخشیدن به کسبوکارها داشتهاند و دارند. روزگاری که انسانها از کاغذ و خودکار برای ثبت اطلاعات استفاده میکردند دیگر گذشته و امروزه این کارها با بهرهگیری از کامپیوترها انجام میشود. آنچه بیان شد موجب شده تا اهمیت زبانهای برنامهنویسی روز به روز افزایش بیابد و شرکتهای گوناگون (صنایع مختلف) برای پیشبرد اهداف خود نسبت به استخدام افراد مسلط به برنامهنویسی اقدام کنند.
══ فهرست مطالب ══
○ زبان برنامه نویسی پایتون
○ زبان برنامه نویسی جاوا
○ زبان برنامه نویسی C++/C
○ زبان برنامه نویسی جاوا اسکریپت
○ زبان برنامه نویسی گو
○ زبان برنامه نویسی R
○ زبان برنامه نویسی سوئیفت
○ زبان برنامه نویسی پیاچپی
○ زبان برنامه نویسی سیشارپ
○ زبان برنامه نویسی متلب
○ نتیجهگیری
🔸 زبان برنامه نویسی پایتون
«زبان برنامهنویسی پایتون» (Python Programming Language) بدون شک در صدر لیست زبانهایی قرار دارد که برای داشتن یک شغل خوب، باید در سال جدید آموخت. این زبان به طور گستردهای به عنوان بهترین زبان برنامهنویسی که باید آن را به عنوان اولین زبان برنامهنویسی آموخت، انتخاب و پذیرفته شده است. استفاده از زبان پایتون و توسعه برنامه با بهرهگیری از آن ساده است. از پایتون به طور گستردهای برای توسعه برنامههای کاربردی وب مقیاسپذیر استفاده میشود. «یوتیوب» (YouTube)، «اینستاگرام» (Instagram)، «پینترست» (Pinterest)، «سرویمانکی» (SurveyMonkey) از جمله پروژههای بزرگی هستند که با زبان پایتون ساخته شدهاند. پایتون دارای «کتابخانههای» (Libraries) پشتیبان خوب و جامعه توسعهدهندگان بزرگی است.
زبان برنامهنویسی پایتون یک نقطه آغاز خوب برای افراد تازهکار فراهم میکند. بنابراین، به افرادی که به دنبال شغل خوبی هستند، قطعا یادگیری این زبان توصیه میشود. استارتاپهای زیادی از پایتون به عنوان زبان اول و اصلی خود به ویژه برای بکاِند استفاده میکنند و این امر فرصت خوبی را برای برنامهنویسان فول-استک پایتون فراهم میکند. در زیر یک برنامه ساده «سلام دنیا!» یا همان «Hello World!» مشهور قابل مشاهده است.
همانطور که از همین ابتدای راه مشهود است، کد زدن به زبان پایتون ساده است. کلیه افرادی که تمایل دارند به استارتاپها بپیوندند باید پایتون یاد بگیرند. نکته قابل توجه آن است که زبان پایتون کاربرد زیادی در زمینه «علم داده» (Data Science) و «یادگیری ماشین» (Machine Learning) دارد. بنابراین، یادگیری آن برگ برندهای برای کسب فرصتهای شغلی پیشرو و گام برداشتن به سوی آینده است.
🔸 زبان برنامه نویسی جاوا
«جاوا» (Java)، دیگر انتخاب محبوب در سازمانهای بزرگ بوده و هست. این زبان، به طور گسترده برای ساخت برنامههای کاربردی وب در مقیاس کسبوکارهای بزرگ مورد استفاده قرار میگیرد. جاوا به عنوان یک زبان بسیار مقیاسپذیر شناخته شده و بنابراین بسیاری از کسبوکارهای بزرگ آن را پذیرفتهاند و استفاده میکنند. به افرادی که به دنبال توسعه شغلی خود و محیا شدن برای کار در کسبوکارهای بزرگ هستند، یادگیری زبان برنامهنویسی جاوا پیشنهاد میشود.
همچنین، جاوا به طور گستردهای در توسعه برنامههای کاربردی «اندروید» (Android) مورد استفاده قرار میگیرد. امروزه، نظر به این واقعیت که اندروید میلیاردها کاربر دارد، تقریبا همه کسبوکارها نیاز به برنامههای کاربردی اندروید دارند. این امر یک فرصت شغلی قابل توجه را برای توسعه دهندگان جاوا فراهم میکند. البته نباید فراموش کرد که گوگل یک چارچوب توسعه اندروید مبتنی بر جاوا با نام «اندروید استودیو» (Android Studio) تولید کرده است که مسیر را برای کسب درآمد از جاوا برای توسعهدهندگان این زبان هموارتر میکند.
مطالعه ادامه مطلب 👇👇
🔗 ده زبان برنامه نویسی که باید در سال ۱۴۰۰ یاد بگیرید — کلیک کنید (+)
📌 کانال اختصاصی آموزشی برنامهنویسی
آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇
@FaraProg — مطالب و آموزشهای برنامهنویسی فرادرس
✳️ آموزش Visual Studio Code — از نصب تا اجرای اولین پروژه در VS Code
Visual Studio Code یک ویرایشگر کد منبع (Source Code Editor) سبک اما قدرتمند است که روی کامپیوتر دسکتاپ اجرا میشود. این ویرایشگر کد برای ویندوز، macOS و لینوکس در دسترس است. این برنامه با پشتیبانی توکار (Built-in) از JavaScript ،TypeScript و Node.js ارائه میشود و دارای یک اکوسیستم غنی از افزونههایی (Add-on) برای زبانهای دیگر (مانند C++ ،C# ،Java ،Python ،PHP و Go) و سیستمهای زمان اجرا (مانند NET. و Unity) است. پیش از شروع آموزش Visual Studio Code و ارائه تعریف کاملتری از آن، بهتر است ابتدا به این سوال پاسخ داده شود که یک ویرایشگر کد چیست و چه تفاوتهایی با ویرایشگر متن و محیط توسعه یکپارچه (IDE) دارد.
══ فهرست مطالب ══
○ ویرایشگر کد چیست؟
○ Visual Studio Code چیست؟
○ معرفی فیلم های آموزش برنامهنویسی
○ کاربردهای Visual Studio Code
○ ویژگی های کاربردی Visual Studio Code
○ مزایا و معایب Visual Studio Code
○ آموزش Visual Studio Code
○ نگاهی به رابط کاربری در VS Code
○ معرفی مطالب آموزش Visual Studio Code
○ معرفی فیلم های آموزش برنامهنویسی
○ جمعبندی
🔸 ویرایشگر کد چیست؟
یک نرمافزار کامپیوتری از «کدهای منبع» ساخته شده است. این کدهای منبع معمولاً از طریق یک برنامه ویرایشگر کد منبع وارد کامپیوتر میشوند. این ویرایشگر یک «واسط برنامهنویسی» (Programming Interface) است که کدهای نرمافزاری را دریافت و ذخیره میکند. در حوزه کدنویسی، ویرایشگرهای کد منبع مختلفی وجود دارد. اغلب، هر ویرایشگر برای یک زبان برنامهنویسی خاص نوشته میشود.
بیشتر برنامههای کامپیوتری، در یک محیط توسعه یکپارچه (IDE | Integrated Development Environment) ساخته میشوند. IDE معمولاً شامل یک برنامه ویرایشگر کد است که کد منبع یک برنامه را ضبط و تجمیع میکند. ویرایشگر کد میتواند بهرهوری یک توسعهدهنده نرمافزار را افزایش دهد. زیرا، با استفاده از یک برنامه ویرایشگر کد منبع میتوان بلافاصله اعتبار کدهای تولید شده را سنجید.
IDE محیطی است که چند قابلیت را با هم در یک برنامه واحد ترکیب میکند. بنابراین میتوان تفاوت ویرایشگر کد و محیط توسعه را اینگونه بیان کرد:
🔸 Visual Studio Code چیست؟
Visual Studio Code (معروف به VS Code) ویرایشگر کد منبع متنباز (منبع آزاد) و رایگان ارائه شده توسط شرکت مایکروسافت است. Visual Studio Code به برنامهنویسان و توسعهدهندگان کمک میکند تا اشکال زدایی و اصلاح کد را با استفاده از روشهای هوشمند انجام دهند. VS Code در ویندوز، لینوکس و macOS قابل استفاده است. اگرچه، VS Code ویرایشگری نسبتاً سبک به حساب میآید، اما برخی ویژگیهای قدرتمندش آنرا به یکی از محبوبترین ابزارهای توسعه در چند وقت اخیر تبدیل کرده است. در ادامه آموزش Visual Studio Code به معرفی امکانات و ساختار رابط کاربری این ویرایشگر کد پرداخته شده است.
VS Code از مجموعه گستردهای از زبانهای برنامهنویسی شامل ++Java ،C و Python گرفته تا CSS ،Go و Dockerfile پشتیبانی میکند. علاوه بر این، VS Code به برنامهنویسان امکان میدهد تا افزونههای جدیدی از جمله Code Linterها (ابزارهای تحلیل کد برای عیبیابی)، اشکالزدایی و پشتیبانی از توسعه وب و فناوری ابری را اضافه و حتی ایجاد کنند. رابط کاربری VS Code در مقایسه با سایر ویرایشگرهای متن، امکان تعامل بیشتری را با برنامهنویس فراهم میکند. برای سادهسازی تجربه کاربری، VS Code به پنج ناحیه اصلی تقسیم میشود:
– نوار فعالیت (activity bar)
– نوار کناری (side bar)
– گروههای ویرایشگر (Editor groups)
– پنل (panel)
– نوار وضعیت (status bar)
تصویر زیر نشان میدهد که این نواحی چطور در Visual Studio Code نمایش داده میشوند.
مطالعه ادامه مطلب 👇👇
🔗 آموزش Visual Studio Code — از نصب تا اجرای اولین پروژه در VS Code — کلیک کنید (+)
📌 کانال اختصاصی آموزشی برنامهنویسی
آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇
@FaraProg — مطالب و آموزشهای برنامهنویسی فرادرس
Visual Studio Code یک ویرایشگر کد منبع (Source Code Editor) سبک اما قدرتمند است که روی کامپیوتر دسکتاپ اجرا میشود. این ویرایشگر کد برای ویندوز، macOS و لینوکس در دسترس است. این برنامه با پشتیبانی توکار (Built-in) از JavaScript ،TypeScript و Node.js ارائه میشود و دارای یک اکوسیستم غنی از افزونههایی (Add-on) برای زبانهای دیگر (مانند C++ ،C# ،Java ،Python ،PHP و Go) و سیستمهای زمان اجرا (مانند NET. و Unity) است. پیش از شروع آموزش Visual Studio Code و ارائه تعریف کاملتری از آن، بهتر است ابتدا به این سوال پاسخ داده شود که یک ویرایشگر کد چیست و چه تفاوتهایی با ویرایشگر متن و محیط توسعه یکپارچه (IDE) دارد.
══ فهرست مطالب ══
○ ویرایشگر کد چیست؟
○ Visual Studio Code چیست؟
○ معرفی فیلم های آموزش برنامهنویسی
○ کاربردهای Visual Studio Code
○ ویژگی های کاربردی Visual Studio Code
○ مزایا و معایب Visual Studio Code
○ آموزش Visual Studio Code
○ نگاهی به رابط کاربری در VS Code
○ معرفی مطالب آموزش Visual Studio Code
○ معرفی فیلم های آموزش برنامهنویسی
○ جمعبندی
🔸 ویرایشگر کد چیست؟
یک نرمافزار کامپیوتری از «کدهای منبع» ساخته شده است. این کدهای منبع معمولاً از طریق یک برنامه ویرایشگر کد منبع وارد کامپیوتر میشوند. این ویرایشگر یک «واسط برنامهنویسی» (Programming Interface) است که کدهای نرمافزاری را دریافت و ذخیره میکند. در حوزه کدنویسی، ویرایشگرهای کد منبع مختلفی وجود دارد. اغلب، هر ویرایشگر برای یک زبان برنامهنویسی خاص نوشته میشود.
بیشتر برنامههای کامپیوتری، در یک محیط توسعه یکپارچه (IDE | Integrated Development Environment) ساخته میشوند. IDE معمولاً شامل یک برنامه ویرایشگر کد است که کد منبع یک برنامه را ضبط و تجمیع میکند. ویرایشگر کد میتواند بهرهوری یک توسعهدهنده نرمافزار را افزایش دهد. زیرا، با استفاده از یک برنامه ویرایشگر کد منبع میتوان بلافاصله اعتبار کدهای تولید شده را سنجید.
IDE محیطی است که چند قابلیت را با هم در یک برنامه واحد ترکیب میکند. بنابراین میتوان تفاوت ویرایشگر کد و محیط توسعه را اینگونه بیان کرد:
🔸 Visual Studio Code چیست؟
Visual Studio Code (معروف به VS Code) ویرایشگر کد منبع متنباز (منبع آزاد) و رایگان ارائه شده توسط شرکت مایکروسافت است. Visual Studio Code به برنامهنویسان و توسعهدهندگان کمک میکند تا اشکال زدایی و اصلاح کد را با استفاده از روشهای هوشمند انجام دهند. VS Code در ویندوز، لینوکس و macOS قابل استفاده است. اگرچه، VS Code ویرایشگری نسبتاً سبک به حساب میآید، اما برخی ویژگیهای قدرتمندش آنرا به یکی از محبوبترین ابزارهای توسعه در چند وقت اخیر تبدیل کرده است. در ادامه آموزش Visual Studio Code به معرفی امکانات و ساختار رابط کاربری این ویرایشگر کد پرداخته شده است.
VS Code از مجموعه گستردهای از زبانهای برنامهنویسی شامل ++Java ،C و Python گرفته تا CSS ،Go و Dockerfile پشتیبانی میکند. علاوه بر این، VS Code به برنامهنویسان امکان میدهد تا افزونههای جدیدی از جمله Code Linterها (ابزارهای تحلیل کد برای عیبیابی)، اشکالزدایی و پشتیبانی از توسعه وب و فناوری ابری را اضافه و حتی ایجاد کنند. رابط کاربری VS Code در مقایسه با سایر ویرایشگرهای متن، امکان تعامل بیشتری را با برنامهنویس فراهم میکند. برای سادهسازی تجربه کاربری، VS Code به پنج ناحیه اصلی تقسیم میشود:
– نوار فعالیت (activity bar)
– نوار کناری (side bar)
– گروههای ویرایشگر (Editor groups)
– پنل (panel)
– نوار وضعیت (status bar)
تصویر زیر نشان میدهد که این نواحی چطور در Visual Studio Code نمایش داده میشوند.
مطالعه ادامه مطلب 👇👇
🔗 آموزش Visual Studio Code — از نصب تا اجرای اولین پروژه در VS Code — کلیک کنید (+)
📌 کانال اختصاصی آموزشی برنامهنویسی
آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇
@FaraProg — مطالب و آموزشهای برنامهنویسی فرادرس
👍1
✳️ کاربرد زبان اسمبلی — زبان اسمبلی چیست و چه ویژگی هایی دارد؟
در این مطلب، به پرسش زبان اسمبلی چیست پاسخ داده میشود و کاربرد زبان اسمبلی به طور کامل از گذشته تا امروز مورد بررسی قرار میگیرد.
══ فهرست مطالب ══
○ مقدمهای بر زبان اسمبلی
○ زبان ماشین چیست؟
○ زبان اسمبلی چیست ؟
○ تفاوت زبان ماشین و زبان اسمبلی چیست؟
○ نحو زبان اسمبلی به چه صورت است؟
○ چرا زبان اسمبلی مفید است؟
○ چرا باید زبان اسمبلی را یاد گرفت؟
○ ویژگیهای زبان اسمبلی
○ اسمبلر چیست؟
○ مزایا و معایب اسمبلر
○ هدف و کاربرد زبان اسمبلی در گذشته چه بوده است؟
○ کاربرد زبان اسمبلی در حال حاضر چیست؟
○ کاربرد زبان اسمبلی به طور متداول چیست؟
○ معرفی فیلم آموزش زبان اسمبلی فرادرس
🔸 مقدمهای بر زبان اسمبلی
زبان اسمبلی (Assembly Language) یک زبان برنامهنویسی سطح پایین (Low-Level Programming Language) است.دستورهای زبان اسمبلی به کد ماشین و در نتیجه، به سختافزار بسیار نزدیک هستند. به همین دلیل، فراگیری زبان اسمبلی دشوار و کاربردهای آن، منحصر به برخی از زمینههای خاص است. از یادگیری زبان اسمبلی برای فراگیری سازکار کلیه قطعات کامپیوتر از واحد پردازش مرکزی (CPU) گرفته تا حافظه استفاده میشود. البته، زبان اسمبلی کاربردهای دیگری نیز دارد که در ادامه مطلب کاربرد زبان اسمبلی به طور کامل به آنها پرداخته شده است.
نکتهای که باید به آن توجه داشت این است که با وجود آنکه امروزه اغلب برنامهنویسها از زبانهای برنامهنویسی سطح بالا مانند پایتون، جاوا و گو برای توسعه نرمافزارهای گوناگون استفاده میکنند، اما زبان اسمبلی در رتبهبندیهایی که برای زبانهای برنامهنویسی توسط مراکز گوناگون ارائه میشود، معمولا جزو ۲۰ زبان برتر و دارای کاربرد و بازار کار در دنیا محسوب میشود. هرچند که معمولا از جهت کاربرد و بازار کار در فهرست ۱۰ زبان برنامهنویسی برتر قرار ندارد.
برای درک بهتر جایگاه زبان اسمبلی در میان دیگر زبانها از جهت نزدیکی نحو به سختافزار باید گفت که زبان اسمبلی از زبان ماشین سطح بالاتر و از زبانهایی مانند پاسکال و C/C++ سطح پایینتر است. بنابراین، کد نوشته شده به زبان اسمبلی نیز برای اجرا نیاز به آن دارد که به کد قابل اجرا توسط ماشین یا همان زبان ماشین تبدیل شود. در کامپیوترها، چیزی با عنوان اسمبلر (Assembler) وجود دارد که به تبدیل کد اسمبلی به کد قابل اجرای ماشین کمک میکند.
🔸 زبان ماشین چیست؟
زبان ماشین (Machine Language) مجموعه دستورالعملهایی است که با استفاده از آنها کدنویسی ماشین یا در واقع، کدنویسی مستقیم برای سختافزار کامپیوتر، انجام میشود. زبان ماشین، یک زبان برنامهنویسی سطح پایین است که به طور مستقیم برای کنترل واحد پردازش مرکزی کامپیوتر مورد استفاده قرار میگیرد. شایان توجه است که زبان ماشین پایینترین سطح از زبانهای برنامهنویسی و حتی از اسمبلی نیز پایینتر است. منظور از پایین بودن، نزدیکی به سختافزار و نه زبان انسان است.
هر دستوری به زبان ماشین، منجر به آن میشود که واحد پردازش مرکزی یک وظیفه خاص را انجام دهد. از جمله این وظایف میتوان به بارگذاری، ذخیرهسازی، پرش یا انجام عملیات در واحد محاسبه و منطق (Arithmetic Logic Unit) روی یک یا تعداد بیشتری واحد داده در ثبات یا حافظه اشاره کرد. زبان ماشین یک زبان صرفا «عددی» است. یعنی کدهای زبان ماشین دنبالههای از اعداد هستند که برای سختافزار معنای خاصی دارند و قطعات الکترونیکی را به انجام کار خاصی مجبور میکنند. یکی از مهمترین اهداف زبان ماشین، اجرا شدن برنامه نوشته شده در آن در سریعترین زمان ممکن است و به همین دلیل این سطح از نزدیکی به سختافزار را دارد.
زبان ماشین را میتوان پایینترین سطح ارائه برای یک برنامه کامپایل شده توسط کامپایلر زبانهای کامپایلری یا برنامه اسمبلی ترجمه شده توسط اسمبلر در نظر گرفت. در واقع، زبان ماشین زبانی کاملا سطح پایین است که به طور کامل به سختافزار وابسته است.
مطالعه ادامه مطلب 👇👇
🔗 کاربرد زبان اسمبلی — زبان اسمبلی چیست و چه ویژگی هایی دارد؟ — کلیک کنید (+)
📌 کانال اختصاصی آموزشی برنامهنویسی
آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇
@FaraProg — مطالب و آموزشهای برنامهنویسی فرادرس
در این مطلب، به پرسش زبان اسمبلی چیست پاسخ داده میشود و کاربرد زبان اسمبلی به طور کامل از گذشته تا امروز مورد بررسی قرار میگیرد.
══ فهرست مطالب ══
○ مقدمهای بر زبان اسمبلی
○ زبان ماشین چیست؟
○ زبان اسمبلی چیست ؟
○ تفاوت زبان ماشین و زبان اسمبلی چیست؟
○ نحو زبان اسمبلی به چه صورت است؟
○ چرا زبان اسمبلی مفید است؟
○ چرا باید زبان اسمبلی را یاد گرفت؟
○ ویژگیهای زبان اسمبلی
○ اسمبلر چیست؟
○ مزایا و معایب اسمبلر
○ هدف و کاربرد زبان اسمبلی در گذشته چه بوده است؟
○ کاربرد زبان اسمبلی در حال حاضر چیست؟
○ کاربرد زبان اسمبلی به طور متداول چیست؟
○ معرفی فیلم آموزش زبان اسمبلی فرادرس
🔸 مقدمهای بر زبان اسمبلی
زبان اسمبلی (Assembly Language) یک زبان برنامهنویسی سطح پایین (Low-Level Programming Language) است.دستورهای زبان اسمبلی به کد ماشین و در نتیجه، به سختافزار بسیار نزدیک هستند. به همین دلیل، فراگیری زبان اسمبلی دشوار و کاربردهای آن، منحصر به برخی از زمینههای خاص است. از یادگیری زبان اسمبلی برای فراگیری سازکار کلیه قطعات کامپیوتر از واحد پردازش مرکزی (CPU) گرفته تا حافظه استفاده میشود. البته، زبان اسمبلی کاربردهای دیگری نیز دارد که در ادامه مطلب کاربرد زبان اسمبلی به طور کامل به آنها پرداخته شده است.
نکتهای که باید به آن توجه داشت این است که با وجود آنکه امروزه اغلب برنامهنویسها از زبانهای برنامهنویسی سطح بالا مانند پایتون، جاوا و گو برای توسعه نرمافزارهای گوناگون استفاده میکنند، اما زبان اسمبلی در رتبهبندیهایی که برای زبانهای برنامهنویسی توسط مراکز گوناگون ارائه میشود، معمولا جزو ۲۰ زبان برتر و دارای کاربرد و بازار کار در دنیا محسوب میشود. هرچند که معمولا از جهت کاربرد و بازار کار در فهرست ۱۰ زبان برنامهنویسی برتر قرار ندارد.
برای درک بهتر جایگاه زبان اسمبلی در میان دیگر زبانها از جهت نزدیکی نحو به سختافزار باید گفت که زبان اسمبلی از زبان ماشین سطح بالاتر و از زبانهایی مانند پاسکال و C/C++ سطح پایینتر است. بنابراین، کد نوشته شده به زبان اسمبلی نیز برای اجرا نیاز به آن دارد که به کد قابل اجرا توسط ماشین یا همان زبان ماشین تبدیل شود. در کامپیوترها، چیزی با عنوان اسمبلر (Assembler) وجود دارد که به تبدیل کد اسمبلی به کد قابل اجرای ماشین کمک میکند.
🔸 زبان ماشین چیست؟
زبان ماشین (Machine Language) مجموعه دستورالعملهایی است که با استفاده از آنها کدنویسی ماشین یا در واقع، کدنویسی مستقیم برای سختافزار کامپیوتر، انجام میشود. زبان ماشین، یک زبان برنامهنویسی سطح پایین است که به طور مستقیم برای کنترل واحد پردازش مرکزی کامپیوتر مورد استفاده قرار میگیرد. شایان توجه است که زبان ماشین پایینترین سطح از زبانهای برنامهنویسی و حتی از اسمبلی نیز پایینتر است. منظور از پایین بودن، نزدیکی به سختافزار و نه زبان انسان است.
هر دستوری به زبان ماشین، منجر به آن میشود که واحد پردازش مرکزی یک وظیفه خاص را انجام دهد. از جمله این وظایف میتوان به بارگذاری، ذخیرهسازی، پرش یا انجام عملیات در واحد محاسبه و منطق (Arithmetic Logic Unit) روی یک یا تعداد بیشتری واحد داده در ثبات یا حافظه اشاره کرد. زبان ماشین یک زبان صرفا «عددی» است. یعنی کدهای زبان ماشین دنبالههای از اعداد هستند که برای سختافزار معنای خاصی دارند و قطعات الکترونیکی را به انجام کار خاصی مجبور میکنند. یکی از مهمترین اهداف زبان ماشین، اجرا شدن برنامه نوشته شده در آن در سریعترین زمان ممکن است و به همین دلیل این سطح از نزدیکی به سختافزار را دارد.
زبان ماشین را میتوان پایینترین سطح ارائه برای یک برنامه کامپایل شده توسط کامپایلر زبانهای کامپایلری یا برنامه اسمبلی ترجمه شده توسط اسمبلر در نظر گرفت. در واقع، زبان ماشین زبانی کاملا سطح پایین است که به طور کامل به سختافزار وابسته است.
مطالعه ادامه مطلب 👇👇
🔗 کاربرد زبان اسمبلی — زبان اسمبلی چیست و چه ویژگی هایی دارد؟ — کلیک کنید (+)
📌 کانال اختصاصی آموزشی برنامهنویسی
آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇
@FaraProg — مطالب و آموزشهای برنامهنویسی فرادرس
✳️ ۱۲ زبان برنامه نویسی برای IoT به همراه معرفی منابع | راهنمای کاربردی
در این مطلب، ۱۲ زبان برنامه نویسی برای IoT مورد بررسی قرار خواهد گرفت. همچنین، منابع یادگیری برنامه نویسی IoT نیز معرفی میشوند. رشد و توسعه اینترنت و تعدد دستگاههای هوشمند درسالهای اخیر، بشریت را به سمت داشتن دنیای کاملا متصل، به پیش میبرد. در جهان کنونی که شبکه دستگاههای فیزیکی متصل به یکدیگر همواره در حال رشد است، «اینترنت اشیا» که به آن «اینترنت چیزها» (Internet of Things | IoT) نیز گفته میشود، به مسئلهای واقعگرایانهتر مبدل و از فضای یک رویای دوردست خارج شده است.
══ فهرست مطالب ══
○ زبان برنامه نویسی برای IoT
○ منابع یادگیری زبان برنامه نویسی برای IoT
○ جمعبندی
🔸 زبان برنامه نویسی برای IoT
در ساخت و توسعه برنامههای کاربردی دسکتاپ، سرورها و موبایل، از زبانهای برنامهنویسی گوناگونی استفاده میشود. همین امر موجب شده است تا افراد فکر کنند که هیچ تفاوتی بین اشیای هوشمند وجود ندارد و همه آنها «مینیکامپیوتر» (Minicomputer) هستند. اینترنت اشیا دارای یک معماری سه لایه است که شامل تولید دادهها، سازماندهی دادهها با استفاده از «دروازهها» (Gateways) یا «هابها» (Hubs) و همچنین، سرورهای مرکزی است. این سرورهای مرکزی به لحاظ جغرافیایی دورتر از محلی قرار دارند که دادهها تولید میشوند.
برخی از پرسشهایی که در این وهله امکان دارد مطرح شوند عبارتند از:
– سیستمهای اینترنت اشیا چگونه کار میکنند؟
– چه روش برنامه نویسی برای IoT مورد استفاده قرار میگیرد؟
– چه زبان برنامه نویسی برای IoT استفاده میشود؟
انتخاب یک زبان برنامهنویسی خاص برای پروژه اینترنت اشیا، به پیچیدگی انتخاب یک پلتفرم سختافزاری برای این کار است. در اینجا، لیستی از زبانهای برنامهنویسی ارائه شده است که برای پروژههای اینترنت اشیا مناسب هستند.
🔸 منابع یادگیری زبان برنامه نویسی برای IoT
در بخشهای پیشین، ضمن معرفی هر زبان برنامه نویسی برای IoT منبع یا منابع یادگیری آن زبان نیز معرفی شدند. در ادامه، منابع یادگیری زبان برنامه نویسی برای IoT و با تمرکز بر مبحث اینترنت اشیا و پروزههای عملی آن، معرفی شدهاند. همچنین، تعدادی آموزش اینترنت اشیا بار تمرکز بیشتر بر سختافزارهای این حوزه نیز بیان شدهاند. علاقهمندان به بحث اینترنت اشیا، میتوانند با تمرکز هم بر مباحث سختافزاری و هم مباحث نرمافزاری این حوزه، دانش و مهارت خود را به شده ارتقا دهند.
طول مدت این دوره آموزشی که مدرس آن مهندس مرضیه آقایی هستند، یک ساعت و سی و شش دقیقه است. در این دوره، مباحث مقدماتی اینترنت اشیا مورد بررسی قرار گرفته است. از جمله موضوعات مورد بررسی در این دوره آموزش ویدئویی میتوان به معرفی اینترنت اشیا، تاریخچه و چالشهای پیادهسازی آن، مدل مرجع اینترنت اشیا و فناوریهای اساسی درگیر، چشماندازها، تاثیرات و حوزههای کاربرد و دیگر موارد اشاره کرد.
برای کسب اطلاعات بیشتر پیرامون دوره آموزش ویدئویی «آموزش اینترنت اشیا – مقدماتی» و مشاهده پیشنمایشهایی از آن، کلیک کنید.
مطالعه ادامه مطلب 👇👇
🔗 ۱۲ زبان برنامه نویسی برای IoT به همراه معرفی منابع | راهنمای کاربردی — کلیک کنید (+)
📌 کانال اختصاصی آموزشی برنامهنویسی
آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇
@FaraProg — مطالب و آموزشهای برنامهنویسی فرادرس
در این مطلب، ۱۲ زبان برنامه نویسی برای IoT مورد بررسی قرار خواهد گرفت. همچنین، منابع یادگیری برنامه نویسی IoT نیز معرفی میشوند. رشد و توسعه اینترنت و تعدد دستگاههای هوشمند درسالهای اخیر، بشریت را به سمت داشتن دنیای کاملا متصل، به پیش میبرد. در جهان کنونی که شبکه دستگاههای فیزیکی متصل به یکدیگر همواره در حال رشد است، «اینترنت اشیا» که به آن «اینترنت چیزها» (Internet of Things | IoT) نیز گفته میشود، به مسئلهای واقعگرایانهتر مبدل و از فضای یک رویای دوردست خارج شده است.
══ فهرست مطالب ══
○ زبان برنامه نویسی برای IoT
○ منابع یادگیری زبان برنامه نویسی برای IoT
○ جمعبندی
🔸 زبان برنامه نویسی برای IoT
در ساخت و توسعه برنامههای کاربردی دسکتاپ، سرورها و موبایل، از زبانهای برنامهنویسی گوناگونی استفاده میشود. همین امر موجب شده است تا افراد فکر کنند که هیچ تفاوتی بین اشیای هوشمند وجود ندارد و همه آنها «مینیکامپیوتر» (Minicomputer) هستند. اینترنت اشیا دارای یک معماری سه لایه است که شامل تولید دادهها، سازماندهی دادهها با استفاده از «دروازهها» (Gateways) یا «هابها» (Hubs) و همچنین، سرورهای مرکزی است. این سرورهای مرکزی به لحاظ جغرافیایی دورتر از محلی قرار دارند که دادهها تولید میشوند.
برخی از پرسشهایی که در این وهله امکان دارد مطرح شوند عبارتند از:
– سیستمهای اینترنت اشیا چگونه کار میکنند؟
– چه روش برنامه نویسی برای IoT مورد استفاده قرار میگیرد؟
– چه زبان برنامه نویسی برای IoT استفاده میشود؟
انتخاب یک زبان برنامهنویسی خاص برای پروژه اینترنت اشیا، به پیچیدگی انتخاب یک پلتفرم سختافزاری برای این کار است. در اینجا، لیستی از زبانهای برنامهنویسی ارائه شده است که برای پروژههای اینترنت اشیا مناسب هستند.
🔸 منابع یادگیری زبان برنامه نویسی برای IoT
در بخشهای پیشین، ضمن معرفی هر زبان برنامه نویسی برای IoT منبع یا منابع یادگیری آن زبان نیز معرفی شدند. در ادامه، منابع یادگیری زبان برنامه نویسی برای IoT و با تمرکز بر مبحث اینترنت اشیا و پروزههای عملی آن، معرفی شدهاند. همچنین، تعدادی آموزش اینترنت اشیا بار تمرکز بیشتر بر سختافزارهای این حوزه نیز بیان شدهاند. علاقهمندان به بحث اینترنت اشیا، میتوانند با تمرکز هم بر مباحث سختافزاری و هم مباحث نرمافزاری این حوزه، دانش و مهارت خود را به شده ارتقا دهند.
طول مدت این دوره آموزشی که مدرس آن مهندس مرضیه آقایی هستند، یک ساعت و سی و شش دقیقه است. در این دوره، مباحث مقدماتی اینترنت اشیا مورد بررسی قرار گرفته است. از جمله موضوعات مورد بررسی در این دوره آموزش ویدئویی میتوان به معرفی اینترنت اشیا، تاریخچه و چالشهای پیادهسازی آن، مدل مرجع اینترنت اشیا و فناوریهای اساسی درگیر، چشماندازها، تاثیرات و حوزههای کاربرد و دیگر موارد اشاره کرد.
برای کسب اطلاعات بیشتر پیرامون دوره آموزش ویدئویی «آموزش اینترنت اشیا – مقدماتی» و مشاهده پیشنمایشهایی از آن، کلیک کنید.
مطالعه ادامه مطلب 👇👇
🔗 ۱۲ زبان برنامه نویسی برای IoT به همراه معرفی منابع | راهنمای کاربردی — کلیک کنید (+)
📌 کانال اختصاصی آموزشی برنامهنویسی
آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇
@FaraProg — مطالب و آموزشهای برنامهنویسی فرادرس
✳️ آموزش روبی (Ruby) | راهنمای کامل و رایگان برای شروع به کار — به زبان ساده
روبی (Ruby) یک زبان برنامهنویسی پویا، مفهومی، شیٔگرا و همهمنظوره است. افراد بسیاری در اولین گام از مسیر یادگیری مهارت برنامهنویسی با این مشکل مواجه میشوند که نمیدانند باید از کجا شروع کنند و چه چیزی را یاد بگیرند. اما اگر حداقل زبان برنامهنویسی مورد نظر خود را انتخاب کرده باشند و آن زبان روبی (Ruby) باشد، این مطلب میتواند راهنمای کاربردی و جامعی برای شروع یادگیری و معرفی این زبان برنامهنویسی محسوب شود. سعی شده است تا همه مباحث پیرامون آموزش روبی در این مطلب گنجانده شود تا بتوان از آن برای نقطه شروعی در فرآیند آموزش روبی استفاده کرد.
══ فهرست مطالب ══
○ روبی چیست ؟
○ تاریخچه روبی
○ روبی چه کاربردهایی دارد؟
○ ویژگی های روبی
○ مزایا و معایب روبی
○ برترین فریمورکهای روبی چه هستند؟
○ آموزش روبی
○ پیشنیازهای آموزش روبی
○ آموزش نصب روبی
○ راهنمایی برای شروع یک پروژه با روبی
○ منابع یادگیری روبی
○ جمعبندی
🔸 روبی چیست ؟
روبی (Ruby) یک زبان برنامهنویسی پویا و متنباز است که بر سادگی و بازدهی بالا تمرکز دارد. نحو زبان Ruby بسیار مناسب است، به طوری که خواندن و و یرایش مجدد کدها را آسان میکند. Ruby یک زبان برنامهنویسی اسکریپتنویسی به حساب میآید که توسط دانشمند رایانه و برنامهنویس نرمافزاری اهل ژاپن، یوکیهیرو ماتسوموتو (Yukihiro Matsumoto) طراحی شده است. زبان روبی روی بسترهای مختلفی مثل ویندوز، مک OS و لینوکس اجرا میشود. واژه Ruby در انگلیسی به معنی یاقوت سرخ است که طراحی لوگو روبی نیز به همین مفهوم اشاره دارد.
فریمورک Ruby on Rails به رشد و افزایش استفاده از این زبان در حوزه برنامهنویسی وب بسیار کمک کرده است. همچنین لازم به ذکر است که زبان برنامهنویسی روبی یک زبان کاملاً شیٔگرا محسوب میشود. برای مثال، حتی سادهترین انواع داده مثل نوع عدد صحیح (Integer) متدها و متغیرهای نمونه (Instance Variable) مخصوص به خود را دارد. اکنون که به سوال «روبی چیست» به میزان زیادی پاسخ داده شده است، میتوان دریافت که آموزش روبی امر مهمی به حساب میآید و یادگیری آن بسیار مفید است. در ادامه این مطلب، با هدف آشنایی بیشتر با این زبان و شروع آموزش روبی، اشارهای به تاریخچه این زبان برنامهنویسی شده است.
– None
🔸 تاریخچه روبی
در این بخش از مطلب آموزش روبی به شرح مختصری از تاریخچه روبی و ذکر نکات مهم در این زمینه پرداخته شده است. ابتدا بهتر است به معرفی خالق این زبان برنامهنویسی پرداخته شود.
Ruby توسط یوکیهیرو ماتسوموتو (Yukihiro Matsumoto) در ژاپن و در اوایل دهه هفتاد شمسی ساخته شد. او در سال ۱۳۴۴ به دنیا آمده است. یوکیهیرو ماتسوموتو اغلب با نام مستعار «ماتس» (Matz) شناخته میشود. او یک دانشمند علوم کامپیوتر و برنامهنویس نرمافزار ژاپنی است. مهمترین دستاورد ماتسوموتو را میتوان همین خلق زبان Ruby و پیادهسازی مستندات آن دانست. رفتار و منش ماتسوموتو باعث شده است که شعار معروفی درباره او در اجتماع Ruby شکل بگیرد:
معادل انگلیسی این شعار «Matz is nice and so we are nice» است که معمولاً به صورت خلاصه با سرنام «MINASWAN» به کار گرفته میشود. در ادامه، پیرامون هدف از ساخت روبی و این مسئله که ایده خلق روبی چطور در ذهن ماتس شکل گرفت، توضیحاتی ارائه شده است.
مطالعه ادامه مطلب 👇👇
🔗 آموزش روبی (Ruby) | راهنمای کامل و رایگان برای شروع به کار — به زبان ساده — کلیک کنید (+)
📌 کانال اختصاصی آموزشی برنامهنویسی
آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇
@FaraProg — مطالب و آموزشهای برنامهنویسی فرادرس
روبی (Ruby) یک زبان برنامهنویسی پویا، مفهومی، شیٔگرا و همهمنظوره است. افراد بسیاری در اولین گام از مسیر یادگیری مهارت برنامهنویسی با این مشکل مواجه میشوند که نمیدانند باید از کجا شروع کنند و چه چیزی را یاد بگیرند. اما اگر حداقل زبان برنامهنویسی مورد نظر خود را انتخاب کرده باشند و آن زبان روبی (Ruby) باشد، این مطلب میتواند راهنمای کاربردی و جامعی برای شروع یادگیری و معرفی این زبان برنامهنویسی محسوب شود. سعی شده است تا همه مباحث پیرامون آموزش روبی در این مطلب گنجانده شود تا بتوان از آن برای نقطه شروعی در فرآیند آموزش روبی استفاده کرد.
══ فهرست مطالب ══
○ روبی چیست ؟
○ تاریخچه روبی
○ روبی چه کاربردهایی دارد؟
○ ویژگی های روبی
○ مزایا و معایب روبی
○ برترین فریمورکهای روبی چه هستند؟
○ آموزش روبی
○ پیشنیازهای آموزش روبی
○ آموزش نصب روبی
○ راهنمایی برای شروع یک پروژه با روبی
○ منابع یادگیری روبی
○ جمعبندی
🔸 روبی چیست ؟
روبی (Ruby) یک زبان برنامهنویسی پویا و متنباز است که بر سادگی و بازدهی بالا تمرکز دارد. نحو زبان Ruby بسیار مناسب است، به طوری که خواندن و و یرایش مجدد کدها را آسان میکند. Ruby یک زبان برنامهنویسی اسکریپتنویسی به حساب میآید که توسط دانشمند رایانه و برنامهنویس نرمافزاری اهل ژاپن، یوکیهیرو ماتسوموتو (Yukihiro Matsumoto) طراحی شده است. زبان روبی روی بسترهای مختلفی مثل ویندوز، مک OS و لینوکس اجرا میشود. واژه Ruby در انگلیسی به معنی یاقوت سرخ است که طراحی لوگو روبی نیز به همین مفهوم اشاره دارد.
فریمورک Ruby on Rails به رشد و افزایش استفاده از این زبان در حوزه برنامهنویسی وب بسیار کمک کرده است. همچنین لازم به ذکر است که زبان برنامهنویسی روبی یک زبان کاملاً شیٔگرا محسوب میشود. برای مثال، حتی سادهترین انواع داده مثل نوع عدد صحیح (Integer) متدها و متغیرهای نمونه (Instance Variable) مخصوص به خود را دارد. اکنون که به سوال «روبی چیست» به میزان زیادی پاسخ داده شده است، میتوان دریافت که آموزش روبی امر مهمی به حساب میآید و یادگیری آن بسیار مفید است. در ادامه این مطلب، با هدف آشنایی بیشتر با این زبان و شروع آموزش روبی، اشارهای به تاریخچه این زبان برنامهنویسی شده است.
– None
🔸 تاریخچه روبی
در این بخش از مطلب آموزش روبی به شرح مختصری از تاریخچه روبی و ذکر نکات مهم در این زمینه پرداخته شده است. ابتدا بهتر است به معرفی خالق این زبان برنامهنویسی پرداخته شود.
Ruby توسط یوکیهیرو ماتسوموتو (Yukihiro Matsumoto) در ژاپن و در اوایل دهه هفتاد شمسی ساخته شد. او در سال ۱۳۴۴ به دنیا آمده است. یوکیهیرو ماتسوموتو اغلب با نام مستعار «ماتس» (Matz) شناخته میشود. او یک دانشمند علوم کامپیوتر و برنامهنویس نرمافزار ژاپنی است. مهمترین دستاورد ماتسوموتو را میتوان همین خلق زبان Ruby و پیادهسازی مستندات آن دانست. رفتار و منش ماتسوموتو باعث شده است که شعار معروفی درباره او در اجتماع Ruby شکل بگیرد:
معادل انگلیسی این شعار «Matz is nice and so we are nice» است که معمولاً به صورت خلاصه با سرنام «MINASWAN» به کار گرفته میشود. در ادامه، پیرامون هدف از ساخت روبی و این مسئله که ایده خلق روبی چطور در ذهن ماتس شکل گرفت، توضیحاتی ارائه شده است.
مطالعه ادامه مطلب 👇👇
🔗 آموزش روبی (Ruby) | راهنمای کامل و رایگان برای شروع به کار — به زبان ساده — کلیک کنید (+)
📌 کانال اختصاصی آموزشی برنامهنویسی
آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇
@FaraProg — مطالب و آموزشهای برنامهنویسی فرادرس
✳️ پنج نکته کلیدی برای شروع یادگیری زبان برنامه نویسی C — راهنمای مقدماتی
اگر تاکنون کلمه برنامهنویسی به گوشتان خورده باشد، بیشک نام زبان برنامه نویسی C را نیز شنیدهاید. C یکی از قدیمیترین زبانهای کدنویسی موجود است. برخی از آن میترسند، برخی دیگر نیز عاشقش هستند. زبان C به خاطر دشواری یادگیری برای افراد مبتدی مشهور است. دلایل زیادی برای یادگیری این زبان وجود دارد، اما پیش از شروع به این کار چند نکته مهم وجود دارند که باید به خاطر بسپارید.
══ فهرست مطالب ══
○ زبان برنامهنویسی C چیست؟
○ چرا باید برنامهنویسی C را بیاموزیم؟
○ ۱. یادگیری انواع متغیرهای پایه
○ ۲. یادگیری عملگرها
○ ۳. استفاده از کتابخانههای استاندارد
○ ۴. C بخشش ندارد
○ ۵. دیباگ کردن بهترین دوست شما است
○ سخن پایانی
🔸 زبان برنامهنویسی C چیست؟
برای این که بدانید ماهیت زبان برنامهنویسی C چیست، بهتر است ابتدا با مفهوم کدنویسی آشنا شوید. بدین منظور پیشنهاد میکنیم ابتدا مطلب زیر را مطالعه نمایید:
– آموزش زبان C با یک پروژه ساده — راهنمای مقدماتی
C یک زبان برنامهنویسی رویهای سطح پایین است که به کد ماشینی که رایانه اجرا میکند، بسیار نزدیک است. این وضعیت موجب میشود که این زبان بسیار سریع باشد؛ اما استفاده از آن چالشبرانگیز است و در صورتی که مراقب نباشید، ممکن است به سیستم خود آسیب بزنید.
🔸 چرا باید برنامهنویسی C را بیاموزیم؟
اگر C چنین پیچیده و خطرناک است، پس اصلاً چرا باید آن را آموخت؟ پاسخ این است که:
– C در همه جا حضور دارد.
– تقریباً همه سیستمهای عامل برای رایانهها به زبان C نوشته شدهاند.
– اغلب گوشیهای هوشمند و تبلتها سیستم عامل مبتنی بر زبان C دارند.
– تقریباً همه میکروکنترلرها چه روی نمایشگر درب میکروویو باشند و چه در مسافتیاب داخلی خودرو به کار رفته باشند، به زبان C برنامهنویسی شدهاند.
– C++، Objective C و #C مستقیماً بر مبنای C ساخته شدهاند و زبان برنامهنویسی «پایتون» (Python) نیز به وسیله آن نوشته شده است.
– کسب دانش مناسب از زبان C، در رزومه هر برنامهنویسی نقطهای مثبت تلقی میشود.
برخی افراد فکر میکنند که یادگیری C پیش از هر زبان دیگر برنامهنویسی موجب میشود که فرد درک بهتری از برنامهنویسی به صورت کلی داشته باشد.
یادگیری C در واقع به معنی یادگیری طرز کار رایانهها نیز هست. برنامه نویسان C میتوانند درک عمیقتری از شیوه تأثیر کد روی سیستمها داشته باشند و در نتیجه یادگیری زبانهای برنامهنویسی دیگر برای آنها آسانتر خواهد بود.
مطالعه ادامه مطلب 👇👇
🔗 پنج نکته کلیدی برای شروع یادگیری زبان برنامه نویسی C — راهنمای مقدماتی — کلیک کنید (+)
📌 کانال اختصاصی آموزشی برنامهنویسی
آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇
@FaraProg — مطالب و آموزشهای برنامهنویسی فرادرس
اگر تاکنون کلمه برنامهنویسی به گوشتان خورده باشد، بیشک نام زبان برنامه نویسی C را نیز شنیدهاید. C یکی از قدیمیترین زبانهای کدنویسی موجود است. برخی از آن میترسند، برخی دیگر نیز عاشقش هستند. زبان C به خاطر دشواری یادگیری برای افراد مبتدی مشهور است. دلایل زیادی برای یادگیری این زبان وجود دارد، اما پیش از شروع به این کار چند نکته مهم وجود دارند که باید به خاطر بسپارید.
══ فهرست مطالب ══
○ زبان برنامهنویسی C چیست؟
○ چرا باید برنامهنویسی C را بیاموزیم؟
○ ۱. یادگیری انواع متغیرهای پایه
○ ۲. یادگیری عملگرها
○ ۳. استفاده از کتابخانههای استاندارد
○ ۴. C بخشش ندارد
○ ۵. دیباگ کردن بهترین دوست شما است
○ سخن پایانی
🔸 زبان برنامهنویسی C چیست؟
برای این که بدانید ماهیت زبان برنامهنویسی C چیست، بهتر است ابتدا با مفهوم کدنویسی آشنا شوید. بدین منظور پیشنهاد میکنیم ابتدا مطلب زیر را مطالعه نمایید:
– آموزش زبان C با یک پروژه ساده — راهنمای مقدماتی
C یک زبان برنامهنویسی رویهای سطح پایین است که به کد ماشینی که رایانه اجرا میکند، بسیار نزدیک است. این وضعیت موجب میشود که این زبان بسیار سریع باشد؛ اما استفاده از آن چالشبرانگیز است و در صورتی که مراقب نباشید، ممکن است به سیستم خود آسیب بزنید.
🔸 چرا باید برنامهنویسی C را بیاموزیم؟
اگر C چنین پیچیده و خطرناک است، پس اصلاً چرا باید آن را آموخت؟ پاسخ این است که:
– C در همه جا حضور دارد.
– تقریباً همه سیستمهای عامل برای رایانهها به زبان C نوشته شدهاند.
– اغلب گوشیهای هوشمند و تبلتها سیستم عامل مبتنی بر زبان C دارند.
– تقریباً همه میکروکنترلرها چه روی نمایشگر درب میکروویو باشند و چه در مسافتیاب داخلی خودرو به کار رفته باشند، به زبان C برنامهنویسی شدهاند.
– C++، Objective C و #C مستقیماً بر مبنای C ساخته شدهاند و زبان برنامهنویسی «پایتون» (Python) نیز به وسیله آن نوشته شده است.
– کسب دانش مناسب از زبان C، در رزومه هر برنامهنویسی نقطهای مثبت تلقی میشود.
برخی افراد فکر میکنند که یادگیری C پیش از هر زبان دیگر برنامهنویسی موجب میشود که فرد درک بهتری از برنامهنویسی به صورت کلی داشته باشد.
یادگیری C در واقع به معنی یادگیری طرز کار رایانهها نیز هست. برنامه نویسان C میتوانند درک عمیقتری از شیوه تأثیر کد روی سیستمها داشته باشند و در نتیجه یادگیری زبانهای برنامهنویسی دیگر برای آنها آسانتر خواهد بود.
مطالعه ادامه مطلب 👇👇
🔗 پنج نکته کلیدی برای شروع یادگیری زبان برنامه نویسی C — راهنمای مقدماتی — کلیک کنید (+)
📌 کانال اختصاصی آموزشی برنامهنویسی
آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇
@FaraProg — مطالب و آموزشهای برنامهنویسی فرادرس
👍1
✳️ برنامه نویسی بلاکچین برای توسعه دهندگان تازه کار — بخش اول
شاید تاکنون از خود پرسیده باشید که آیا زبان خاصی برای برنامه نویسی بلاکچین وجود دارد؟ و یا اگر با برنامهنویسی آشنایی چندانی نداشته باشید، شاید برایتان این سؤال پیش آمده باشد که آیا میتوان بدون مقدمه وارد عرصه برنامهنویسی بلاکچین شد. در این نوشته به معرفی مبانی زبان برنامهنویسی برای ورود به عرصه بلاکچین میپردازیم.
══ فهرست مطالب ══
○ صنعت جدید
○ تحلیل برنامهنویسی بلاکچین
○ زبانهای چندمنظوره در برابر زبانهای با دامنه خاص
○ زبان چندمنظوره
○ زبان با دامنه خاص
○ خوانایی دستور زبان و شیب یادگیری
○ سخن پایانی
🔸 صنعت جدید
به طور کلی موضوعاتی که مورد علاقه شخص و با ارزشهای وی همسو باشند یادگیری بسیار آسانتری نسبت به موضوعاتی که مورد علاقه نیستند، دارند. این مسئله در حوزه کاملاً پیچیده و به شدت در حال تکاملی مانند برنامهنویسی بلاکچین اهمیتی دو چندان دارد. پیش از آغاز باید برخی از چالشهایی که یک توسعهدهنده بلاکچین در این صنعت نوپا با آنها مواجه خواهد بود را معرفی کنیم.
نخستین و مهمترین نکته در تفاوت پیوسته و عمومی ریشه دارد که افراد مختلف در مورد تعریف ماهیت بلاکچین دارند. اگر کمی در فضای توییتر در حوزه رمزپولها (یا همان ارزهای دیجیتالی) بچرخید برای شما مشخص میشود که جوامع رمزپول تا چه حد پراکنده هستند و این موضوع در مورد جوامع توسعهدهندههای رمزپولها نیز دوچندان است. این فرقهگرایی طبیعی منجر به گفتگوهای تعصبآمیز در مورد هدف نهایی کریپتوها شده و موجب میشود که توسعهدهندههای تازهکار با یک لایه دیگر از آشفتگی مواجه شوند.
همچنین با وجود اکثریت پروژههایی که در فاز تست هستند و پروژههای زندهای که به طور مداوم بهروزرسانی و فورک میشوند و یا مورد هک قرار میگیرند، جای شگفتی نیست که شاهد مستندات و راهنماهای ناقص باشیم. این حوزهای است که به طور مداوم در حال تکامل است و نیازمند تکرار پیوسته است که برای هیچ تیمی کار آسانی محسوب نمیشود.
🔸 تحلیل برنامهنویسی بلاکچین
اگر از قبل میدانید که قرار است روی چه پروژهای کار کنید بهتر است به ریپازیتوری گیتهاب مربوطه مراجعه کنید یا زبانی که انتخاب کردهاید را در این مقاله جستجو کنید و به مطالعه آن بپردازید. بخش بعدی این مقاله مناسب کسانی است که نمیتوانند دقیقاً مشخص سازند که روی چه نوع پروژهای میخواهند کار بکنند یا این که کدام زبان/مهارتها برای آغاز کارشان در این حوزه مناسبتر است.
به طور کلی برنامهنویسی بلاکچین میتواند واجد سه معنا باشد:
– انتشار یک پیشنهاد عرضه اولیه سکه (ICO).
– ساخت یک قرارداد هوشمند یا اپلیکیشن توزیع یافته (DAPP).
– مشارکت در یک بلاکچین موجود یا انتشار یک بلاکچین جدید.
بهتر است هر یک از گزینههای سهگانه فوق را به دقت بررسی کنید، چون هر کدام از آنها نیازمند مجموعه زبانهای مختلف و روشهای یادگیری متفاوت هستند. علاوه بر آن، این گزینهها کمک میکنند که یک گام به شناسایی گزینه ترجیحی خود نزدیکتر شوید. اینک به مراحل نهایی انتخاب زبان برنامهنویسی رسیدهایم؛ اما نباید فراموش کنید که ترجیح شخصی بر همه این موارد اولویت دارد، زیرا موجب ایجاد انگیزه در شما برای یادگیری یک مهارت جدید میشود.
مطالعه ادامه مطلب 👇👇
🔗 برنامه نویسی بلاکچین برای توسعه دهندگان تازه کار — بخش اول — کلیک کنید (+)
📌 کانال اختصاصی آموزشی برنامهنویسی
آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇
@FaraProg — مطالب و آموزشهای برنامهنویسی فرادرس
شاید تاکنون از خود پرسیده باشید که آیا زبان خاصی برای برنامه نویسی بلاکچین وجود دارد؟ و یا اگر با برنامهنویسی آشنایی چندانی نداشته باشید، شاید برایتان این سؤال پیش آمده باشد که آیا میتوان بدون مقدمه وارد عرصه برنامهنویسی بلاکچین شد. در این نوشته به معرفی مبانی زبان برنامهنویسی برای ورود به عرصه بلاکچین میپردازیم.
══ فهرست مطالب ══
○ صنعت جدید
○ تحلیل برنامهنویسی بلاکچین
○ زبانهای چندمنظوره در برابر زبانهای با دامنه خاص
○ زبان چندمنظوره
○ زبان با دامنه خاص
○ خوانایی دستور زبان و شیب یادگیری
○ سخن پایانی
🔸 صنعت جدید
به طور کلی موضوعاتی که مورد علاقه شخص و با ارزشهای وی همسو باشند یادگیری بسیار آسانتری نسبت به موضوعاتی که مورد علاقه نیستند، دارند. این مسئله در حوزه کاملاً پیچیده و به شدت در حال تکاملی مانند برنامهنویسی بلاکچین اهمیتی دو چندان دارد. پیش از آغاز باید برخی از چالشهایی که یک توسعهدهنده بلاکچین در این صنعت نوپا با آنها مواجه خواهد بود را معرفی کنیم.
نخستین و مهمترین نکته در تفاوت پیوسته و عمومی ریشه دارد که افراد مختلف در مورد تعریف ماهیت بلاکچین دارند. اگر کمی در فضای توییتر در حوزه رمزپولها (یا همان ارزهای دیجیتالی) بچرخید برای شما مشخص میشود که جوامع رمزپول تا چه حد پراکنده هستند و این موضوع در مورد جوامع توسعهدهندههای رمزپولها نیز دوچندان است. این فرقهگرایی طبیعی منجر به گفتگوهای تعصبآمیز در مورد هدف نهایی کریپتوها شده و موجب میشود که توسعهدهندههای تازهکار با یک لایه دیگر از آشفتگی مواجه شوند.
همچنین با وجود اکثریت پروژههایی که در فاز تست هستند و پروژههای زندهای که به طور مداوم بهروزرسانی و فورک میشوند و یا مورد هک قرار میگیرند، جای شگفتی نیست که شاهد مستندات و راهنماهای ناقص باشیم. این حوزهای است که به طور مداوم در حال تکامل است و نیازمند تکرار پیوسته است که برای هیچ تیمی کار آسانی محسوب نمیشود.
🔸 تحلیل برنامهنویسی بلاکچین
اگر از قبل میدانید که قرار است روی چه پروژهای کار کنید بهتر است به ریپازیتوری گیتهاب مربوطه مراجعه کنید یا زبانی که انتخاب کردهاید را در این مقاله جستجو کنید و به مطالعه آن بپردازید. بخش بعدی این مقاله مناسب کسانی است که نمیتوانند دقیقاً مشخص سازند که روی چه نوع پروژهای میخواهند کار بکنند یا این که کدام زبان/مهارتها برای آغاز کارشان در این حوزه مناسبتر است.
به طور کلی برنامهنویسی بلاکچین میتواند واجد سه معنا باشد:
– انتشار یک پیشنهاد عرضه اولیه سکه (ICO).
– ساخت یک قرارداد هوشمند یا اپلیکیشن توزیع یافته (DAPP).
– مشارکت در یک بلاکچین موجود یا انتشار یک بلاکچین جدید.
بهتر است هر یک از گزینههای سهگانه فوق را به دقت بررسی کنید، چون هر کدام از آنها نیازمند مجموعه زبانهای مختلف و روشهای یادگیری متفاوت هستند. علاوه بر آن، این گزینهها کمک میکنند که یک گام به شناسایی گزینه ترجیحی خود نزدیکتر شوید. اینک به مراحل نهایی انتخاب زبان برنامهنویسی رسیدهایم؛ اما نباید فراموش کنید که ترجیح شخصی بر همه این موارد اولویت دارد، زیرا موجب ایجاد انگیزه در شما برای یادگیری یک مهارت جدید میشود.
مطالعه ادامه مطلب 👇👇
🔗 برنامه نویسی بلاکچین برای توسعه دهندگان تازه کار — بخش اول — کلیک کنید (+)
📌 کانال اختصاصی آموزشی برنامهنویسی
آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇
@FaraProg — مطالب و آموزشهای برنامهنویسی فرادرس
✳️ تولید اعداد تصادفی با Mersenne Twister — الگوریتم و مفاهیم اولیه | به زبان ساده
«اعداد تصادفی» (Random Number) و همچنین اعداد «شبه تصادفی» (Pseudo Random) در صنعت، نمونهگیری و توزیعهای آماری و بخصوص در «رمزنگاری» (Cryptography) اطلاعات رایانهای کاربرد دارند. الگوریتم و روشهای مختلفی برای تولید اعداد شبه تصادفی وجود دارد که یکی از مرسوم ترین آنها روش تولید اعداد تصادفی با Mersenne Twister یا الگوریتم Mersenne Twister است. به علت پرکاربرد بودن این تکنیک در بسیاری از نرمافزارهای رایانهای، در این متن به معرفی تکنیک تولید اعداد تصادفی به روش Mersenne Twister میپردازیم. در انتها نیز دو بخش برای معرفی این الگوریتم با استفاده از شبه کد و همچنین کد پایتون اشاره خواهیم کرد.
══ فهرست مطالب ══
○ تولید اعداد تصادفی با Mersenne Twister
○ معرفی فیلم آموزش Cryptography در دات نت
○ خلاصه و جمعبندی
🔸 تولید اعداد تصادفی با Mersenne Twister
«مرسن پیچشی» «Mersenne Twister» یک تولید کننده «اعداد شبه تصادفی» (Pseudo Random Number Generator) یا به اختصار PRNG است. روشهای مبتنی بر PRNG بیشترین کاربرد عمومی در تولید اعداد (شبه) تصادفی را دارد. نام روش تولید اعداد تصادفی با Mersenne Twister از این واقعیت ناشی میشود که طول دوره تناوب آن به عنوان یک «عدد اول مرسن» (Mersenne prime) انتخاب شده است.
Mersenne Twister در سال ۱۹۹۷ توسط دو دانشمند ژاپنی به نامهای «ماکوتو ماتسومو» (Makoto Matsumoto) و «تاکوجی ناشیمورا» (Takuji Nishimura) ابداع گشت. این روش به طور خاص برای رفع بسیاری از نقایص موجود در روشهای قدیمی مولد اعداد شبه تصادفی طراحی شده است.
🔸 معرفی فیلم آموزش Cryptography در دات نت
اعداد تصادفی (Random Number) و همچنین روشهای تولید اعداد شبه تصادفی (PRNG) در رمزنگاری (Cryptography) و تکنیکهای مختلف آن، نقش بسازایی دارند. باید توجه داشت که برای تولید کدهای رمز شده از اعداد تصادفی و همچنین اعداد اول (Prime Numbers) استفاده میشود. در این فیلم آموزشی به طور عملی نحوه رمزنگاری دادهها را به کمک زبان برنامهنویسی سی شارپ (#C) و همچنین محیط Dot.net فرا میگیرید. فهرست سرفصلها و رئوس مطالب مطرح شده در این مجموعه آموزشی، در ادامه آمده است:
– درس یکم: تعریف Cryptography، تاریخچه رمزنگاری، زمینه های اصلی رمزنگاری، رمزنگاری در دات نت.
– درس دوم: اعداد تصادفی در رمزنگاری، کلاس RNGCryptoServiceProvider.
– درس سوم: الگوریتم های Hashing، توابع Hashing، MD۵، خانواده SHA، MAC یا کدهای ارزیابی پیام.
– درس چهارم: ذخیره سازی رمز عبور، استفاده از Hashing در ذخیره رمز عبور، پسورد بر مبنای توابع کلید اشتقاق.
– درس پنجم: رمزنگاری متقارن، mode های رمزنگاری، padding در رمزنگاری، کلید بردار مقدار دهی اولیه، الگوریتم رمزنگاری DES، الگوریتم رمزنگاری Triple DES، الگوریتم رمزنگاری AES.
– درس ششم: رمزنگاری نامتقارن، الگوریتم رمزنگاری RSA.
– درس هفتم: روش ترکیبی یا Hybrid در رمزنگاری (RSA + AES)، پیاده سازی رمزگذاری Hybrid
– درس هشتم: امضاهای دیجیتال
– درس نهم: رشتههای امن
مطالعه ادامه مطلب 👇👇
🔗 تولید اعداد تصادفی با Mersenne Twister — الگوریتم و مفاهیم اولیه | به زبان ساده — کلیک کنید (+)
📌 کانال اختصاصی آموزشی برنامهنویسی
آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇
@FaraProg — مطالب و آموزشهای برنامهنویسی فرادرس
«اعداد تصادفی» (Random Number) و همچنین اعداد «شبه تصادفی» (Pseudo Random) در صنعت، نمونهگیری و توزیعهای آماری و بخصوص در «رمزنگاری» (Cryptography) اطلاعات رایانهای کاربرد دارند. الگوریتم و روشهای مختلفی برای تولید اعداد شبه تصادفی وجود دارد که یکی از مرسوم ترین آنها روش تولید اعداد تصادفی با Mersenne Twister یا الگوریتم Mersenne Twister است. به علت پرکاربرد بودن این تکنیک در بسیاری از نرمافزارهای رایانهای، در این متن به معرفی تکنیک تولید اعداد تصادفی به روش Mersenne Twister میپردازیم. در انتها نیز دو بخش برای معرفی این الگوریتم با استفاده از شبه کد و همچنین کد پایتون اشاره خواهیم کرد.
══ فهرست مطالب ══
○ تولید اعداد تصادفی با Mersenne Twister
○ معرفی فیلم آموزش Cryptography در دات نت
○ خلاصه و جمعبندی
🔸 تولید اعداد تصادفی با Mersenne Twister
«مرسن پیچشی» «Mersenne Twister» یک تولید کننده «اعداد شبه تصادفی» (Pseudo Random Number Generator) یا به اختصار PRNG است. روشهای مبتنی بر PRNG بیشترین کاربرد عمومی در تولید اعداد (شبه) تصادفی را دارد. نام روش تولید اعداد تصادفی با Mersenne Twister از این واقعیت ناشی میشود که طول دوره تناوب آن به عنوان یک «عدد اول مرسن» (Mersenne prime) انتخاب شده است.
Mersenne Twister در سال ۱۹۹۷ توسط دو دانشمند ژاپنی به نامهای «ماکوتو ماتسومو» (Makoto Matsumoto) و «تاکوجی ناشیمورا» (Takuji Nishimura) ابداع گشت. این روش به طور خاص برای رفع بسیاری از نقایص موجود در روشهای قدیمی مولد اعداد شبه تصادفی طراحی شده است.
🔸 معرفی فیلم آموزش Cryptography در دات نت
اعداد تصادفی (Random Number) و همچنین روشهای تولید اعداد شبه تصادفی (PRNG) در رمزنگاری (Cryptography) و تکنیکهای مختلف آن، نقش بسازایی دارند. باید توجه داشت که برای تولید کدهای رمز شده از اعداد تصادفی و همچنین اعداد اول (Prime Numbers) استفاده میشود. در این فیلم آموزشی به طور عملی نحوه رمزنگاری دادهها را به کمک زبان برنامهنویسی سی شارپ (#C) و همچنین محیط Dot.net فرا میگیرید. فهرست سرفصلها و رئوس مطالب مطرح شده در این مجموعه آموزشی، در ادامه آمده است:
– درس یکم: تعریف Cryptography، تاریخچه رمزنگاری، زمینه های اصلی رمزنگاری، رمزنگاری در دات نت.
– درس دوم: اعداد تصادفی در رمزنگاری، کلاس RNGCryptoServiceProvider.
– درس سوم: الگوریتم های Hashing، توابع Hashing، MD۵، خانواده SHA، MAC یا کدهای ارزیابی پیام.
– درس چهارم: ذخیره سازی رمز عبور، استفاده از Hashing در ذخیره رمز عبور، پسورد بر مبنای توابع کلید اشتقاق.
– درس پنجم: رمزنگاری متقارن، mode های رمزنگاری، padding در رمزنگاری، کلید بردار مقدار دهی اولیه، الگوریتم رمزنگاری DES، الگوریتم رمزنگاری Triple DES، الگوریتم رمزنگاری AES.
– درس ششم: رمزنگاری نامتقارن، الگوریتم رمزنگاری RSA.
– درس هفتم: روش ترکیبی یا Hybrid در رمزنگاری (RSA + AES)، پیاده سازی رمزگذاری Hybrid
– درس هشتم: امضاهای دیجیتال
– درس نهم: رشتههای امن
مطالعه ادامه مطلب 👇👇
🔗 تولید اعداد تصادفی با Mersenne Twister — الگوریتم و مفاهیم اولیه | به زبان ساده — کلیک کنید (+)
📌 کانال اختصاصی آموزشی برنامهنویسی
آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇
@FaraProg — مطالب و آموزشهای برنامهنویسی فرادرس
✳️ ۳ ریجکس مفید برای توسعه دهندگان وب | به زبان ساده
ما در مجله فرادرس پیشتر مقالات متعددی در مورد اهمیت و ماهیت ریجکس (Regex) به رشته تحریر درآوردهایم و کاربردهای آن را نیز با ارائه راهنماهای عملی مختلف بیان کردهایم. اما هر چه از اهمیت ریجکس گفته شود، کم است. در این مقاله به بررسی ۳ ریجکس مفید برای توسعهدهندگان وب میپردازیم.
══ فهرست مطالب ══
○ ریجکس تائید ایمیل
○ پیچیدگی رمز عبور
○ تاریخ در قالب YYYY-MM-dd
🔸 ریجکس تائید ایمیل
برای تائید صحت نشانی ایمیل میتوانید از ریجکس زیر استفاده کنید:
کاربرد این ریجکس در کد به صورت زیر است:
در این ریجکس از دو کاراکتر anchor به صورت زیر استفاده شده است:
🔸 پیچیدگی رمز عبور
در این بخش یک ریجکس مفید دیگر را برای توسعهدهندگان فرانتاند معرفی میکنیم. این ریجکس میزان پیچیدگی و قدرت یک رمز عبور را بررسی میکند:
پیش از آن که به توضیح اجزای این ریجکس بپردازیم، باید اشاره کنیم که این ریجکس شامل تعداد زیادی «اطرافنگری» مثبت بودن به شکل?=(..) است. تعداد زیادی اطرافنگریهای مثبت و منفی وجود دارند که استفاده از هردوی آنها در حالتی که موقعیت حروف ثابت نباشد، مفید خواهد بود.
توجه کنید که در مثال ریجکس قبلی برای اعتبارسنجی نشانی ایمیل ما موقعیت حروف را میدانستیم:
مطالعه ادامه مطلب 👇👇
🔗 ۳ ریجکس مفید برای توسعه دهندگان وب | به زبان ساده — کلیک کنید (+)
📌 کانال اختصاصی آموزشی برنامهنویسی
آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇
@FaraProg — مطالب و آموزشهای برنامهنویسی فرادرس
ما در مجله فرادرس پیشتر مقالات متعددی در مورد اهمیت و ماهیت ریجکس (Regex) به رشته تحریر درآوردهایم و کاربردهای آن را نیز با ارائه راهنماهای عملی مختلف بیان کردهایم. اما هر چه از اهمیت ریجکس گفته شود، کم است. در این مقاله به بررسی ۳ ریجکس مفید برای توسعهدهندگان وب میپردازیم.
══ فهرست مطالب ══
○ ریجکس تائید ایمیل
○ پیچیدگی رمز عبور
○ تاریخ در قالب YYYY-MM-dd
🔸 ریجکس تائید ایمیل
برای تائید صحت نشانی ایمیل میتوانید از ریجکس زیر استفاده کنید:
کاربرد این ریجکس در کد به صورت زیر است:
در این ریجکس از دو کاراکتر anchor به صورت زیر استفاده شده است:
🔸 پیچیدگی رمز عبور
در این بخش یک ریجکس مفید دیگر را برای توسعهدهندگان فرانتاند معرفی میکنیم. این ریجکس میزان پیچیدگی و قدرت یک رمز عبور را بررسی میکند:
پیش از آن که به توضیح اجزای این ریجکس بپردازیم، باید اشاره کنیم که این ریجکس شامل تعداد زیادی «اطرافنگری» مثبت بودن به شکل?=(..) است. تعداد زیادی اطرافنگریهای مثبت و منفی وجود دارند که استفاده از هردوی آنها در حالتی که موقعیت حروف ثابت نباشد، مفید خواهد بود.
توجه کنید که در مثال ریجکس قبلی برای اعتبارسنجی نشانی ایمیل ما موقعیت حروف را میدانستیم:
مطالعه ادامه مطلب 👇👇
🔗 ۳ ریجکس مفید برای توسعه دهندگان وب | به زبان ساده — کلیک کنید (+)
📌 کانال اختصاصی آموزشی برنامهنویسی
آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇
@FaraProg — مطالب و آموزشهای برنامهنویسی فرادرس
Forwarded from FaraDars_Course
📣 معرفی «کانالهای موضوعی فرادرس» در رشتههای مختلف تحصیلی و تخصصی
🌟 برای دسترسی به مطالب و مقالات آموزشی رایگان، عضو کانال مورد نظر خود شوید👇👇👇
📌کانال آموزش برنامهنویسی:
@FaraProg
📌کانال آموزش برنامهنویسی پایتون:
@FaraPython
📌کانال آموزش برنامهنویسی اندروید:
@FaraAnd
📌کانال آموزش برنامهنویسی جاوا:
@Fara_Java
📌کانال آموزش طراحی و توسعه وب:
@FaraWebDev
📌کانال آموزش متلب و سیمولینک:
@FaraMatlabSim
📌کانال آموزش رباتیک:
@FaraRobotics
📌کانال آموزش هوش مصنوعی:
@FaraAI
📌کانال آموزش علم داده:
@Fara_DS
📌کانال آموزش علوم مهندسی:
@FaraEng
📌کانال آموزش مهندسی مکانیک:
@FaraMechanical
📌کانال آموزش مهندسی برق:
@FaraElectrical
📌کانال آموزش مهندسی عمران:
@FaraCivil
📌کانال آموزش معماری:
@FaraArch
📌کانال آموزش شیمی:
@FaraChem
📌کانال آموزش مهندسی و علوم کامپیوتر:
@FaraCompEng
📌کانال آموزش طراحی گرافیک:
@FaraGraphDesign
📌کانال آموزش زبانهای خارجی:
@FaraLang
📌کانال آموزش زیستشناسی:
@FaraBio
📌کانال آموزش فیزیک:
@FaraPhys
📌کانال آموزش ریاضیات:
@FaraMathematic
📌کانال آموزش آمار و احتمالات:
@FaraStatistics
📌کانال آموزش نرم افزارهای آفیس:
@FaraOffice
📌کانال آموزش بورس و بازار سهام:
@FaraVest
📌کانال آموزش بازاریابی دیجیتال:
@Kaprila
@FaraDars — کانال اصلی فرادرس
📣 معرفی «کانالهای موضوعی فرادرس» در رشتههای مختلف تحصیلی و تخصصی
🌟 برای دسترسی به مطالب و مقالات آموزشی رایگان، عضو کانال مورد نظر خود شوید👇👇👇
📌کانال آموزش برنامهنویسی:
@FaraProg
📌کانال آموزش برنامهنویسی پایتون:
@FaraPython
📌کانال آموزش برنامهنویسی اندروید:
@FaraAnd
📌کانال آموزش برنامهنویسی جاوا:
@Fara_Java
📌کانال آموزش طراحی و توسعه وب:
@FaraWebDev
📌کانال آموزش متلب و سیمولینک:
@FaraMatlabSim
📌کانال آموزش رباتیک:
@FaraRobotics
📌کانال آموزش هوش مصنوعی:
@FaraAI
📌کانال آموزش علم داده:
@Fara_DS
📌کانال آموزش علوم مهندسی:
@FaraEng
📌کانال آموزش مهندسی مکانیک:
@FaraMechanical
📌کانال آموزش مهندسی برق:
@FaraElectrical
📌کانال آموزش مهندسی عمران:
@FaraCivil
📌کانال آموزش معماری:
@FaraArch
📌کانال آموزش شیمی:
@FaraChem
📌کانال آموزش مهندسی و علوم کامپیوتر:
@FaraCompEng
📌کانال آموزش طراحی گرافیک:
@FaraGraphDesign
📌کانال آموزش زبانهای خارجی:
@FaraLang
📌کانال آموزش زیستشناسی:
@FaraBio
📌کانال آموزش فیزیک:
@FaraPhys
📌کانال آموزش ریاضیات:
@FaraMathematic
📌کانال آموزش آمار و احتمالات:
@FaraStatistics
📌کانال آموزش نرم افزارهای آفیس:
@FaraOffice
📌کانال آموزش بورس و بازار سهام:
@FaraVest
📌کانال آموزش بازاریابی دیجیتال:
@Kaprila
@FaraDars — کانال اصلی فرادرس
❇️ فیلم آموزش «بررسی دستورات مهم در SQL - بخش اول» در ۶ دقیقه | به زبان ساده
📌 آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید.
❇️ فیلم آموزش «بررسی دستورات مهم در SQL - بخش اول» در ۶ دقیقه | به زبان ساده
📌 آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید.
👍2
❇️ فیلم آموزش «بررسی دستورات مهم در SQL - بخش دوم» در ۱ دقیقه | به زبان ساده
📌 آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید.
❇️ فیلم آموزش «بررسی دستورات مهم در SQL - بخش دوم» در ۱ دقیقه | به زبان ساده
📌 آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید.
❇️ فیلم آموزش «بررسی دستورات مهم در SQL - بخش سوم» در ۵ دقیقه | به زبان ساده
📌 آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید.
❇️ فیلم آموزش «بررسی دستورات مهم در SQL - بخش سوم» در ۵ دقیقه | به زبان ساده
📌 آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید.
This media is not supported in your browser
VIEW IN TELEGRAM
❇️ فیلم آموزش «بررسی دستورات مهم در SQL - بخش چهارم» در ۴ دقیقه | به زبان ساده
📌 آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید.
❇️ فیلم آموزش «بررسی دستورات مهم در SQL - بخش چهارم» در ۴ دقیقه | به زبان ساده
📌 آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی را در کانال اختصاصی [@FaraProg] دنبال کنید.