خوش آمدید به رمان ۹۸ | بهترین انجمن رمان نویسی

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

M O B I N A

سرپرست بخش فرهنگ و ادب
عضو کادر مدیریت
کاربر V.I.P انجمن
سرپرست بخش
ناظر کتاب
منتقد انجمن
  
  
عضویت
3/4/21
ارسال ها
25,242
امتیاز واکنش
64,121
امتیاز
508
سن
19
محل سکونت
BUSHEHR
زمان حضور
272 روز 9 ساعت 46 دقیقه
نویسنده این موضوع
بهترین زبان برنامه نویسی برای شروع چیست؟

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

اگر به دنبال یادگیری یک زبان برنامه نویسی باشی به احتمال زیاد اسامی زبان‌های “سطح بالا” و “سطح پایین” تا به حال زیاد به گوشت خورده. باید بگم که مفهوم سطح بالا یا سطح پایین بودن یک زبان مسئله ای نسبیه یعنی بسته به زبان هایی که دارن با هم مقایسه میشن یک زبان برنامه نویسی ممکنه سطح بالا یا سطح پایین محسوب بشه.

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


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

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

بر خلاف زبان‌های برنامه نویسی سطح پایین، خوندن، نوشتن و نگهداری و بهبود برنامه‌های نوشته شده به زبان‌های برنامه نویسی سطح بالا مثل جاوا، سی شارپ و PHP بسیار راحته. زبان‌های سطح بالا به معماری سخت افزار وابسته نیستن و با اون‌ها شما به جای سر و کار داشتن با خونه‌های حافظه، با توابع، اشیا و … سر و کار دارید.


چگونه برنامه نویسی را شروع کنیم؟

 
  • تشکر
Reactions: Nazgol.H

M O B I N A

سرپرست بخش فرهنگ و ادب
عضو کادر مدیریت
کاربر V.I.P انجمن
سرپرست بخش
ناظر کتاب
منتقد انجمن
  
  
عضویت
3/4/21
ارسال ها
25,242
امتیاز واکنش
64,121
امتیاز
508
سن
19
محل سکونت
BUSHEHR
زمان حضور
272 روز 9 ساعت 46 دقیقه
نویسنده این موضوع
انواع پلتفرم‌های برنامه نویسی
برای اینکه به مبحث انواع پلتفرم‌ها بپردازیم نیازه که اول بدونیم پلتفورم چیه. پلتفورم در واقع بسـ*ـتریه که یه نرم افزار می‌تونه در اون اجرا بشه. معمولا پلتفورم با سیستم عامل اشتباه گرفته میشه در حالی که پلتفورم به مجموع سخت افزار (مثل موبایل، کامپیوتر‌های دسکتاپ یا لپتاپ، کنسول‌ها و…) و سیستم عامل‌های مختلف (مثل ویندوز 32 بیت یا 64 بیت، مکینتاش، اندروید، IOS و…) و حتی نسخه‌های اون‌ها (مثل ویندوز 2008 یا مک او اس سیرا) گفته میشه.
با احتساب توضیحات بالا به طور کلی ما می‌تونیم روی سه بسـ*ـتر یا پلتفورم مهم موبایل، وب و دسکتاپ برنامه بنویسیم. البته من توی این مقاله با این سه نوع از پلتفورم‌های اصلی سر و کار دارم و صد البته که پلتفورم‌های دیگه ای مثل ساعت‌های هوشمند، لوازم خانگی هوشمند و… با سیستم‌های عامل و نسخه‌های مختلف وجود دارن.
برنامه نویسی موبایل
برنامه‌های موبایل معمولابه دو دسته برنامه‌های اندرویدی و برنامه‌های IOS تقسیم میشن. حتما با این دو سیستم عامل از قبل آشنا هستی. برای نوشتن اپلیکیشن‌های اندروید می‌تونی از زبان‌های برنامه نویسی مثل جاوا، سی شارپ، کاتلین، سی پلاس پلاس و… استفاده کنی. اما توی ایران زبان جاوا برای این کار رایج تره.
به علاوه برای نوشتن اپلیکیشن‌های IOS می‌تونی از زبان هایی مثل swift و objective c استفاده کنی.
برنامه نویسی وب
برنامه‌های وب به دو دسته برنامه‌های سمت کاربر (client side) و برنامه‌های سمت سرور (server side) تقسیم میشن. برنامه‌های سمت کاربر برنامه هایی هستن که روی مرورگر کاربر اجرا میشن و برنامه‌های سمت سرور برنامه هایی هستن که روی یک کامپیوتر سرور اجرا میشن ونتایج اجرای اون ها، به کامپیوتر کاربران نرم افزار ارسال میشه.
اگر قصد وارد شدن به حوزه برنامه نویسی وب رو داری برای انتخاب زبان برنامه نویسی اول باید مشخص کنی اون زبان رو برای سمت کاربر می‌خوای یا برای سمت سرور. البته معمولا در موقع شروع کار برنامه نویسی وب اولین قدم ها، چه قصد رفتن به سمت کلاینت رو داشته باشید و چه سمت سرور یادگیری زبان‌های html و css هست. چون این دو زبان پایه برنامه نویسی وب محسوب میشن ولی بدون اون‌ها هم شروع یادگیری برنامه نویسی سمت سرور ممکنه.
برای حوزه سمت کاربر زبان جاوا اسکریپت رو یاد بگیر. برای حوزه سمت سرور به تناسب نیاز و هدف گذاریت می‌تونی بین زبان‌های برنامه نویسی زیادی مثل PHP، جاوا اسکریپت، روبی و… زبان برنامه نویسی مورد علاقه ات رو انتخاب کنی.
برنامه نویسی دسکتاپ
برنامه نویسی دسکتاپ بیشتر به برنامه نویسی برای نرم افزارهای ویندوز و مکینتاش (به علاوه لینوکس) اشاره می‌کنه. می‌تونی با استفاده از زبان هایی مثل جاوا، سی شارپ، پایتون و… که اغلب کراس پلتفورم هستن برنامه بنویسی.


چگونه برنامه نویسی را شروع کنیم؟

 

M O B I N A

سرپرست بخش فرهنگ و ادب
عضو کادر مدیریت
کاربر V.I.P انجمن
سرپرست بخش
ناظر کتاب
منتقد انجمن
  
  
عضویت
3/4/21
ارسال ها
25,242
امتیاز واکنش
64,121
امتیاز
508
سن
19
محل سکونت
BUSHEHR
زمان حضور
272 روز 9 ساعت 46 دقیقه
نویسنده این موضوع
برنامه نویسی کراس پلتفورم بومی native cross-platform

هر سیستم عامل موبایلی روی بسته توسعه نرم افزاری یا software development kit (SDK) خاص خودش اجرا میشه. هر SDK از زبان برنامه نویسی خاصی پشتیبانی می‌کنه. مثلا اپلیکیشن‌های IOS روی swift و objective c اجرا میشن و اپلیکیشن‌های اندروید روی java. اپلیکیشن هایی که مستقیما تحت این SDK‌ها اجرا میشن به اپلیکیشن‌های بومی یا native معروف هستن.

اما میشه کاری کرد که یک API یا framework واحد بین این SDK و اپلیکیشن به عنوان یک واسط قرار بگیره .به این ترتیب اجرای اون اپلیکیشن از زبان برنامه نویسی مستقل میشه! سازنده این API معمولا یک نرم افزار IDE یا محیط توسعه نرم افزار یکپارچه رو در اختیار برنامه نویس‌ها قرار می‌ده تا برنامه نویس‌ها بتونن به راحتی و با استفاده از اون IDE‌ها با نوشتن یک بار کد، برای همه پلتفورم‌های پشتیبانی شده خروجی بگیرن.

با این روش این اپلیکیشن‌ها در نهایت از SDK بومی هر پلتفورم برای اجرا شدن استفاده می‌کنن .یعنی در نهایت تفاوت آنچنانی با برنامه‌های بومی ندارن. به طور مثال Xamarinو React Native جز این دسته هستن!

روش برنامه نویسی کراس پتلفورم مزایا و معایب خاص خودش رو داره:

مزایا شروع برنامه نویسی کراس پلتفورم

  • رابط کاربری تقریبا بومی
  • پرفورمنس یا کارایی بالا تقریبا نزدیک به اپلیکیشن‌های بومی
  • کاهش هزینه‌های منابع انسانی و مالی
  • توسعه سریع
  • امکان استفاده از API‌های بومی هر پلتفورم مانند مکان یابی، دسترسی به حافظه و…
معایب شروع برنامه نویسی کراس پلتفورم

  • نیاز به تایید مجدد مارکت‌های اپلیکیشن مثل اپ استور برای هر بار به روزرسانی
  • کاملا بومی نبودن رابط کاربری بخاطر تفاوت‌های زیاد رابط کاربری اندروید و IOS
  • امنیت پایین


شروع برنامه نویسی کراس پلتفورم ترکیبی hybrid cross-platform

در برنامه‌های موبایلی بیشتر بار پردازشی در سمت سرور یا بک اند انجام میشه. بنابراین بزرگ‌ترین بخش این برنامه‌ها به رابط کاربری یا GUI اختصاص داره. بسته‌های نرم افزار یا SDK‌های اندروید و IOS امکانی به اسم Webview در خودشون دارن که با استفاده از اون یک مرورگر به اپلیکیشن اضافه میشه. این موضوع چه خبر خوشی برای ما داره؟

با استفاده از webview می‌تونی به سادگی با استفاده از HTML، CSS و جاوا اسکریپت اپلیکیشن‌های موبایل بسازی! به همین دلیل به این برنامه ها، برنامه‌های ترکیبی میگن. اما مشکل این نوع از برنامه نویسی اینه که برای ارتباط با API‌های بومی مثل مکان یابی و دسترسی به حافظه به یک واسط بین جاوا اسکریپت و زبان برنامه نویسی بومی احتیاج هست. این روش هم مثل روش قبل مزایا و معایب خاص خودش رو داره

مزایا


  • نوشتن یک بار کد برای همه پلتفرم ها
  • کم کردن هزینه‌های نگهداری اپلیکیشن به دلیل مشترک بودن کد ها
  • دیباگ و اشکال گیری بدون احتیاج به شبیه ساز هر پلتفورم
  • صرفه جویی در هزینه‌های منابع انسانی و زمان (به همین دلیل برای موقعیت‌های با مهلت زمانی کم یکی بهترین انتخاب هاست!)
  • راحتی کدنویسی برای برنامه نویسان وب


چگونه برنامه نویسی را شروع کنیم؟

 

M O B I N A

سرپرست بخش فرهنگ و ادب
عضو کادر مدیریت
کاربر V.I.P انجمن
سرپرست بخش
ناظر کتاب
منتقد انجمن
  
  
عضویت
3/4/21
ارسال ها
25,242
امتیاز واکنش
64,121
امتیاز
508
سن
19
محل سکونت
BUSHEHR
زمان حضور
272 روز 9 ساعت 46 دقیقه
نویسنده این موضوع
معایب

  • دسترسی محدود به برخی امکانات پلتفورم
  • احتیاج به وجود یک واسط جاوا اسکریپت به native برای دسترسی به API‌های بومی
  • آسیب پذیری و امنیت پایین
  • وجود نداشتن رابط کاربری مجزا و بومی برای هر پلتفورم
نتیجه گیری

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

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

اینا همه شرایط مختلفی هستن که ممکنه هر شخص علاقه مند به وارد شدن به حوزه برنامه نویسی لازم داشته باشه بهشون فکر کنه. پس سعی کن با دید باز و منطقی تصمیم بگیری. تصمیم تو چیه؟ اونو با ما در میون بذار تا برای ادامه مسیر کمکت کنیم!
#سون_لرن


چگونه برنامه نویسی را شروع کنیم؟

 
shape1
shape2
shape3
shape4
shape7
shape8
بالا