وبلاگ

وبلاگ

وبلاگ

10 زبان برنامه نویسی برتر در سال 2019

حسین قنبری
برنامه نویسی بررسی
1398/6/12

سلام به بررسی 10 زبان برتر برنامه نویسی در سال 2019 میپردازیم که تو این بررسی متوسط درآمد و همچنین میزان سختی در یادگیری اونها رو هم بررسی میکنیم.

در ادامه همراه ما باشید.

1 . JavaScript

زبان جاوااسکریپت در رتبه اول این بررسی هستش .این روزها توسعه یک نرم افزار با جاوااسکریپت به هیچ وجه غیرممکن نیست و همچنین تصور یه برنامه بدون جاوا اسکریپت هم غیر ممکن شده. 

جاوااسکریپت بسیار پرطرفدار هم هست.

  • یادگیری : آسان
  • میانگین درآمدسالانه : 110,000 دلار

2 . Paython

زبان پایتون امروزه در بیشتر نظر سنجی ها در رتبه پنجم قرار میگیره اما تو این بررسی اونو تو رتبه دوم قرار میدیم .

پایتون زبان برنامه نویسی واضحی هستش از نظر سینتکسی و بسیار شبیه زبان انگلیسی و مبتنی بر شئ می باشد. 

  • یادگیری : آسان
  • میانگین درآمدسالانه : 114,000 دلار

3 . Java

اگر از هرکس بپرسید چرا جاوا، در پاسخ می گوید: یکبار بنویس و همه جا اجرا کن. جاوا زبان برنامه نویسی حاکم در 20 سال گذشته بوده و هست. 

جاوا یک زبان شئ گرا و قوی است.

  • یادگیری : آسان
  • میانگین درآمدسالانه : 101,000 دلار

4 . ++C / C

قدیمی و طلا. C این نقل قول را به خوبی ثابت کرده و یک ارتباط قوی در دنیای برنامه نویسی ایجاد کرده.

زبان ++C هم در سال 1983 توسعه پیدا کرد.

  • یادگیری : سخت
  • میانگین درآمدسالانه : 113,000 دلار

5 . Php

Php در سال 1994 ایجاد شد. امروزه 83 درصد سایت های دنیا از Phpاستفاده می کنند.

  • یادگیری : آسان
  • میانگین درآمدسالانه : 84,000 دلار

6 . Switf

زبان بعدی در لیست ما، زبان Swift است. اگر شما میخواهید توسعه دهنده برای سیستم عامل Ios یا سیستم عامل Mac باشید، Swiftزبان مورد نیاز شماست.

  • یادگیری : آسان
  • میانگین درآمدسالانه : 130,000 دلار

7 . #C

#C یه زبان پرقدرت و شئ گرا هستش که توسط مایکروسافت تو سال 2000 عرضه شد و معمولا برای توسعه برنامه های تحت دسکتاپ استفاده میشه.

  • یادگیری : سخت
  • میانگین درآمدسالانه : 66,000 دلار

8 . Ruby

  • یادگیری : آسان
  • میانگین درآمدسالانه : 130,000 دلار

9 . Objective-c

  • یادگیری : متوسط
  • میانگین درآمدسالانه : 101,000 دلار

10 . Sql

  • یادگیری : سخت
  • میانگین درآمدسالانه : 86,000 دلار

ساختار mutable و immutable در جاوا اسکریپت

حسین قنبری
برنامه نویسی آموزش
1399/3/11

بعضی اوقات مفاهیم و ایده ها به آرامی در یک جامعه برنامه نویسی رشد می کنند ، گاهی اوقات به نظر می رسد که در یک زمان کوتاه ظاهر می شوند. از آنجا که React در 2 سال گذشته به صحنه آمد ، به نظر می رسد  مقالاتی که داده های قابل تغییر و تغییرناپذیر را ذکر می کنند ، چند برابر شده ، همچنین کتابخانه هایی مانند Immutable.js به کاربران امکان می دهد از "داده های غیرقابل تغییر" استفاده کنند. من نمی خواهم به آن کتابخانه ها بپردازم ، اما فکر می کنم مفید است که یک راهنمایی سریع راجع به اینکه داده های غیرقابل تغییر در واقع چیست ، چه تفاوتی با داده های قابل تغییر دارد و چرا با اهمیت است

آبجکت قابل تغییر حالتی است که state می تواند بعد از ایجاد تغییر یابد. آبجکت تغییر ناپذیر حالتی است که state بعد از ایجاد آن نمی تواند تغییر یابد. نمونه هایی از مقادیر بومی جاوا اسکریپت که تغییر ناپذیر هستند اعداد و رشته ها هستند. نمونه هایی از مقادیر بومی جاوا اسکریپت که قابل تغییر هستند شامل آبجکت ، آرایه ها ، توابع ، کلاس ها است.

 

چند مثال رو با هم میبینیم .

 

let a = {
    foo: 'bar'
};

let b = a;

a.foo = 'test';

console.log(b.foo); // test
console.log(a === b) // true
let a = 'test';
let b = a;
a = a.substring(2);

console.log(a) //st
console.log(b) //test
console.log(a === b) //false
let a = ['foo', 'bar'];
let b = a;

a.push('baz')

console.log(b); // ['foo', 'bar', 'baz']
console.log(a === b) // true
let a = 1;
let b = a;
a++;

console.log(a) //2
console.log(b) //1
console.log(a === b) //false

 

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