وبلاگ شخصی مستر حاج رضا

وبلاگ شخصی مستر حاج رضا

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

وبلاگ شخصی مستر حاج رضا

در اینجا میخوام فقط بنویسم! درهم و نامربوط! همه چیز

مروری بر برنامه ها و تخصص های جدید در دنیای فناوری اطلاعات

از اولین باری که از کامپیوتر استفاده میکردم (سال 2003) تا حالا که سال 2018 است سیستم های کامپیوتری و فناوری ها پیشرفت چشمگیری داشتند. به علت مشکلات شخصی ای که داشتم از سال 2009 به بعد من نتونستم مثل قبل دنبال برنامه ها و اخبار روز کامپیوتری برم و از این نظر خیلی عقب افتادم و واقعاً هم الان پشیمونم. 

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

1- زبان های برنامه نویسی 

شاید از همون اول که کامپیوتر ساخته شد این رشته و تخصص خیلی خیلی مهم بوده! الان هم هست! فعلاً برنامه های جاوا و پیتون توی بورس هستند. اما شما باید زبان سی پلاس پلاس رو هم بلد باشید. از نظر تقاضای بازار کار، پیتون (یا پایتون) برنامه جدیدتری است و خیلی جذب داره. 

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


2- هوش مصنوعی! 

بله! الان بیشتر شرکتهای بزرگ فناوری این خدمات رو هم دارند! اینجا لینک چند تاش رو میزارم

 هوش مصنوعی گوگل. 

https://ai.google/


هوش مصنوعی مایکروسافت

https://www.microsoft.com/en-us/ai


هوش مصنوعی آمازون

https://aws.amazon.com/machine-learning/ai-lex-polly-rekognition/


برنامه واتسون (هوش مصنوعی شرکت آی بی ام)

https://www.ibm.com/watson/

این شرکتها افراد رو در این زمینه استخدام میکنند و چون این برنامه ها جدید هستند در هنگام استخدام نیازی به داشتن سابقه کاری نیست. البته این تخصص نیازمند دانش بالایی در زمینه فناوری وب و برنامه نویسی هست. 


3- خدمات وب در فضای ابر

آمازون وب سرویس (AWS) پیشتاز این فناوری است! بازار کارش هم در اروپا و مخصوصاً آمریکا داغ داغ است! الان دیگه دوره دوره دیتا ساینس هست و گذشت اون زمان که کسانی که نتورکینگ کامپیوترها رو بلد بودند فکر میکردند خدای کامپیوتر هستند. دیگه شرکتها کم کم روی به سرور هایی آوردند که در فضای مجازی و به عنوان کلاود (ابر) هستند. 

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


4- بلاک چین

IBM Blockchain

این برنامه شرکت آی بی ام هست. کلاً این شرکت همیشه محصولاتش خفن و درجه یک هست! باز هم دیتا ساینس! 

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

درآمد کسی که متخصص بلاک چین باشه از یک مهندس هم بالاتر است! 


5- کوبرنیتی و داکر کانتینر

خداییش اسم خفنش رو دارید! تو خط پایین انگلیسیش رو مینویستم تا بتونید تو اینترنت پیداشون کنید

Docker Containers

Kubernetes 

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


6- لینوکس رو فراموش نکنید

تمام برنامه ها و فناوری هایی که در بالا نوشتم روی سیستم عامل لینوکس قابل اجرا هستند! لینوکس سنت او اس، لینوکس اوبونتو و لینوکس فدورا از سیستم های محبوب تر و برای شرکتهای تجاری بیشتر استفاده میشه! 

خوبی لینوکس اینه که هم سیستم عاملش رایگان هست و هم آموزش های آنلاینش خیلی راحتتر پیدا میشه! 



خب اینم از گزارش امروزم 

متغییرهای مرجع

زبان برنامه‌نویسی C از دو نوع متغیر پشتیبانی می‌کندمتغیرهای معمولی و اشاره‌گرها (متغیرهای حاوی آدرس حافظه). زبان ++C نوع سومی را به این مجموعه اضافه کرده استمتغیرهای مرجع (Reference).

متغیرهای مرجع از روی دو نوع دیگر ساخته می‌شود و به نوعی می‌توان گفت نام مستعار برای متغیر اصلی به حساب می‌آیدبرای تعریف متغیر مرجع از عملگر & استفاده می‌کنیم:

  

int a;
int &b = a;

  

عبارت فوق متغیر b را مرجعی برای a معرفی می‌کنداز این کد به بعد متغیرهای a و b معادل هم هستندیعنی تغییرات a در b و تغییرات b در aتاثیر می‌گذارددر واقع a و b از یک محل حافظه استفاده می‌کنند؛ یا اینکه یک خانه‌ی حافظه، دو نام متفاوت دارد.

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

منبع الگوریتم ها


متغییرهای مرجع در سه جا به درد میخورند

1- هنگامی که داده های برگشتی ما بیشتر از یکی باشد

2- برای تغییر پارامتر اصلی

3- برای ذخیره کمتر حافظ و زمان