با سلام :))
توضیحات مختصری توی
سر آغاز دادم که هدف این بلاگ چیه .
اینجا جهت اولیه رو یکم مشخص تر می کنم که الان اوضاع چه طوره و این حرفا .
یه دونه کانال تلگرام بنده ساختم که توش در طول روز احتمالا کلی چیز می نویسم .
با این لینک می تونین جوین شین :
join channel
توی این بلاگ قراره یکم شسته رفته تر چیزا رو بنویسم .
این خلاصه ای از چیزاییه که تا الان اتفاق افتاده :
در حال حاضر شروع رو توی کانال زدم و در مورد این حرف زدم که تازگیا به خوندن کتاب علاقه مند شدم و سعی کردم ( خیلی سخت بود ) لیست کتابایی که می خوام بخونم رو یکم فیلتر کنم و شروع کنم به خوندنشون .
الان هم بیشتر کتاباش حول محور زبون های برنامه نویسیه مختلفه
چند تا کتاب
اسکالا هست , یه دونه راجع به کلیت کانکارنسی و چرا مدلی که مرسومه برای این کارا ( ترد - لاک - سینکرونایز کردن و این چیزا ) دیگه اون قدر جوابگو نیست , چند تا کتاب راجع به
elixir , یه دونه راجع به
erlang , و چند تا چیز دیگه که لینکاشونو ته این نوشته می ذارم .
یکم جلو بره احتمالا پروژه های تمرینی ریز ریز دوست داشته باشم انجام بدم با اینا . ( و حتی بدون اینا :دی مثلا دوست دارم یه پروژه بلاگ بزنم نوشته هامو ببرم اونجا :)) )
هدف گذاری اولیه اینه که سعی کنم لیست اولیه رو تا آخر تابستون تموم کنم .
و اینکه خیلی محتمله که این لیست هنوز بیشتر فیلتر شه . چون از بعضی از تاپیکا چند تا کتاب توشه و ممکنه خیلیاش تکراری باشه . یا ممکنه تکراریاشو صرفا خودم نخونم و ورق بزنم بره .
در پرانتز هم اینو بگم که خوندن داکیومنت های رسمی رو خیلی مفید می دونم و خیلی هم از نظر زمانی احتمالا به صرفه تره . فقط نکته ی ریزی که هست اینه که بعضا یه سریا کتاب می نویسن و هدفشون از کتاب اینه که یه دید خاصی به یه موضوع رو توضیح بدن , که این کتابا به نظرم ارزش خودشونو دارن همیشه . با اینکه وقت بیشتری رو می طلبن . و بعضی از کتابا هم صرفا نویسنده هاشون خفنن :)) آدم دلش نمیاد نخونه .
خب بریم سراغ رفرنس به کتاب ها :
گروه اسکالا :
Programming in Scala Fourth Edition
این کتاب خیلی طولانیه . احتمالا الان هم نرم سراغش . منتهی چون یکی از نویسنده هاش scala رو طراحی کرده از این بابت کتاب ارزشمندیه و احتمالا یه مقدار که اسکالا رو اوکی شدم بیام چیزایی که اینجا فکر می کنم خوبه رو بخونم . ( این ورژنش چون جدیده ریت نداره زیاد - ورژن قبلیش بالای صد تا ریت داره )
Functional Programming in scala
اسکالا یه زبون general purpose عه که باهاش می شه با پارادایم های مختلفی کد زد . خوبیش دقیقا همینه که گفتم . بدیش هم دقیقا همینه که گفتم :))
از این لحاظ بده که وقتی توی یه تیمی ملت بخوان اسکالا بزنن و هر کی بخواد طبق سلیقه ی خودش کدد بزنه استایلا خیلی متفاوت می شه و چیز تمیزی از توش در نمیاد .
و جدا از این بنده تازگیا به برنامه نویسی فانکشنال علاقه مند شدم ( در این باب بعدا یه چیزی می نویسم )
و این کتاب سعیش بر اینه که با تمرکز روی اینکه بیایم فانکشنال کد بنویسیم اسکالا رو یاد بده .
و کتاب خوبی هم هست واقعا :)) می گن که تمرینات سختی داره و بخوای تمریناشو کامل حل کنی کلی وقت ازت خواهد گرفت ولی تهش کلی خفن شدی و این حرفا :))
یه دونه کتاب
solution هم داره البته و توی
گیت هم به نظر میاد یه سری جواب ازش گذاشته یکی از نویسنده هاش . ولی توصیه شده که خود آدم حل کنه به هر حال
و در نهایت یک مجموعه ی سه تایی از یه سری کتاب ( تقریبا کوچیک - هر کدوم بین صد تا دویست صفحست ) که وقتی بیشتر خوندمش میام آپدیت می کنم جریانو ! ولی خلاصش اینه که یه چیزایی داشت که حس کردم هم به درد کارم می خوره هم چیزاییه که شخصا دوسشون دارم . در واقع یکم practical میاد موضوع رو بررسی می کنه و از فاز یادگیری خود زبون یکم فاصله داره .
---------
کتاب
Designing Data-Intensive Applications
این کتاب خلاصش در همون ادامه ی اسمش هست :
The Big Ideas Behind Reliable, Scalable, and Maintainable Systems
تا اینجا چند فصل از این رو خوندم ( و البته علی یقمون رو گرفته گفته بخونین :دی پس باید بخونیم) و جذاب بوده :)) چیزای خفنی هم توش اشاره کرده که فکر می کنم بخوای بری نگاه ریزی بهشون بندازی هم مدت ها درگیر خواهی بود :)) کلا چیز قشنگیه و تقریبا به همگی توصیه می کنم این رو :))
---------
کتابی با نام
Seven Concurrency Models in Seven Weeks: When Threads Unravel
این کتاب استارت همه ی این ماجرا ها بود که من یکم رفتم سمت برنامه نویسی فانکشنال .
کتاب با چیزایی مثل کانکارنسی توی جاوا و ترد و لاک و اینا شروع می کنه و تهش می رسه به نظر شخصی نویسنده که آقا اینا خیلی پیچیدست و خیلی هم باگ داره :)) و جدا از پیچیده بودن , سخت افزارهای امروزی دیگه مثل قدیم به این سمت نمی رن که هر
18 ماهی سرعت cpu ها دو برابر بشه . بلکه داریم به این سمت می ریم که تعداد کور cpu ها بیشتر بشه . و نیاز به یه چیزی داریم که از این فرصت استفاده کنه . و خلاصه می ره سمت فانکشنال و این چیزا و ادعا می کنه که بهمون این شانس رو می ده که از این عصر جدید به خوبی استفاده کنیم . ( این کتاب به محض اینکه اون فصل جاوا رو تموم می کنه با
clojure ادامه می ده ماجرا رو - و اوج زیبایی قضیه برای من این بود که با اینکه من هیچ وقت با clojure کار نکرده بودم , به خاطر ذات فانکشنالی که این زبون داره , خوندن داک هاش بسیار کار جذابی بود . خیلی خیلی تجربه ی لذت بخشی بود و اصلا همچین چیزی قدیما ندیده بود و متحیر بودم کاملا)
--------
کتاب
Programming erlang که این رو هم طراح erlang نوشته . بنده خدا چند وقتیه که فوت کرده البته :(
این کتاب رو به این دلیل که elixir روی erlang virtual machine کار می کنه و عملا می شه کد erlang توش زد توصیه های فراوان شنیدم که خوبه خوند و تجربه ی درستی از elixir گرفت .
خیلی خیلی کانسپت های جالبی توی این زبون و elixir وجود داره که تمام سعیم رو خواهم کرد که اینجا هم کلی چیز میز راجع بهش بذارم :دی
--------
کتاب های elixir .
حقیقت موضوع اینه که خود سایت elixir توی قسمت learning اش یه لیست خیلی کامل از منابع گذاشته و منم کم و بیش از همونا استفاده می کنم ولی سعی کردم کمی فیلترش کنم که خیلی context switch نداشته باشم فعلا . ( البته فکر کنم مرز های context switch رو تا همینجا جابه جا کردم :دی )
و خود داکیومنتیشن هاش هم به نظرم بسیار زیبان :))
--------
دو تا کتاب می مونه
یه دونش یک فردیه که نظرات شخصیش راجع به
OOP رو میاد می گه و خیلی هم تعصب داره رو حرفاش .
ولی من مطالبش رو قشنگ و بعضیاش رو هم کاربردی دونستم تا اینجا . کتابشم تو اوردر ۲۰۰ صفحه داره و فکر کنم تو یه سشن چند ساعته بشه جمعش کرد . این رو هم لینکشو الان نمی دم که الکی چیزی رو promote نکرده باشم :))
و یه کتاب داستان طور به اسم
the phoenix project
که این رو خیلی رندوم داشتم تو آمازون اینا می چرخیدم دیدم یه کتابیه که کلی ریویو داره :))
راجع به یه آدمیه که تو یه شرکتی داره کار می کنه و شرکت داره وضعش بد می شه تصمیم می گیرن این رو ارتقا بدن بیاد اوضاع رو جمع و جور کنه :))
و داستان این رو داره بیان می کنه و اینکه چه اتفاقاتی داره می افته
تا اینجایی که کتاب رو خوندم کتاب جذابی بوده :))
و کامنتا رو که می خوندم , می گفتن جذابیت بیشترش برای کساییه که توی حوزه ی it تجربه ی زیادی دارن و عملا خیلی از شخصیت های داستان رو تا به حال تو عمرشون دیدن :)) ( منظورم از دیدن اینه که اینجور آدمایی رو تو همینجو پوزیشن هایی دیدن . )
درباره این سایت