تازه ترین کتاب ها
تاریخ: ۲۱:۵۶:۲۴ ۱۳۹۶/۱۱/۲۹ یکشنبه
توسط: MotoMan
امتیاز: ۰
برچسب ها: Android| Kotlin|

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

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

کتاب توسعه اندروید با Kotlin، راهنمایی عملی است که به شما کمک می‌کند تا با استفاده از زبان Kotlin، روند توسعه اندروید را بهبود داده و به آن سرعت بخشید. ما میان برها و پیشرفت‌های زیاد نسبت به جاوا و راه‌های جدیدی حل مسائل رایج را ارائه دادیم. در پایان این کتاب، شما با ویژگی‌ها و ابزار‌های Kotlin آشنا خواهید شد و شما قادر خواهید بود که برنامه ای اندرویدی را با کاملا با Kotlin توسعه دهید.

تعداد بازدید: ۳۲
دیدگاه ها: ۰
تاریخ: ۲۲:۵۵:۳۴ ۱۳۹۶/۱۱/۲۳ دوشنبه
توسط: MotoMan
امتیاز: ۳

فریمورک ASP.NET Core 2 برای توسعه برنامه‌های وب کراس پلتفرم با کارایی بالا استفاده می‌شود. این فریمورک بر مبنای NET Core 2. است و به طور قابل توجهی API‌های فریمورک بیشتری نسبت به نسخه‌ی یک دارد.

کتاب ASP.NET Core 2 با کارایی بالا؛ به تکنیک‌های بهبود عملکرد سطح بالا اشاره دارد. در آغاز، چگونگی پیدا کردن و اندازه گیری مشکلات کارایی به شما نشان داده می‌شود و پس از آن راه حل برخی از رایج‌ترین آن مشکلات بیان می‌شود. در ادامه با چگونگی آغاز به کار با ASP.NET Core 2 بر روی ویندوز، مک، لینوکس و کانتینر‌های داکر آشنا می‌شوید.

در این کتاب مشکلاتی که در موقع توزیع برنامه بر روی زیرساختی ابری و افزایش تاخیر رخ می‌دهد بررسی شده اند. همچنین چگونگی بهینه سازی کدهای #C و انتخاب بهترین ساختمان‌های داده‌ها برای انجام کار بیان شده است. همچنین ویژگی‌های جدید #C نسخه 6 و 7 به همراه برنامه نویسی همروند و معماری‌های توزیع شده نیز پوشش داده شده اند.

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

تعداد بازدید: ۱۰۳
دیدگاه ها: ۰
تاریخ: ۱۶:۱۳:۷ ۱۳۹۶/۱۱/۲۰ جمعه
توسط: MotoMan
امتیاز: ۰
برچسب ها: Java| Reactive Prgramming|

برنامه نویسی Reactive، یک اصطلاح عمومی برنامه نویسی است که تمرکزش بر روی  واکنش دادن به تغییرات است مثل مقادیر داده‌ها یا رویداد‌ها که معمولا این کار را می‌توان به صورت دستوری انجام داد. Callback رویکردی برای برنامه نویسی reactive است که دستوری انجام می‌شود. یک صفحه اکسل مثالی عالی از برنامه نویسی reactive است: سلول هایی که وابسته به سلول‌های دیگر هستند به صورت خودکار واکنش (react) نشان می‌دهند وقتی که مقادیر آن سلول‌ها تغییر می‌کنند.
در 28 اکتبر سال 2005، Ray Ozzie معمار ارشد مایکروسافت که اخیرا منصوب شده بود، یادداشتی غم انگیز برای کارکنان خود با عنوان اختلال سرویس‌های اینترنتی ایمیل کرد. در این یادداشت Ray Oziie نمایی کلی از این داد که اساسا جهان امروزه چگونه به نظر می‌رسد جایی که سازمان‌ها مثل مایکروسافت، گوگل، فیسبوک، آمازون و نتفلیکس از وب به عنوان کانال اصلی برای ارائه سرویس هایشان استفاده می‌کنند.
از دید یک توسعه دهنده، Ozzie بیانیه ای قابل توجه ای برای مدیر اجرایی یک شرکت بزرگ داد:
پیچیدگی کشنده است. دهان توسعه دهندگان را سرویس می‌کند، برنامه ریزی، بیلد و تست محصولات را مشکل می‌کند، چالش‌های امنیتی به بار می‌آورد و سبب ناامیدی کاربر نهایی و مدیر می‌شود.
اول از همه این را در نظر داشته باشید که در سال 2005، سازمان‌های بزرگ فناوری عمیقا عاشق فناوری‌های پیچیده ای مثل SOAP، WS-* و XML بودند. زمانی بود که هنوز لغت میکرو سرویس اختراع نشده بود و تکنولوژی ساده ای وجود نداشت تا به توسعه دهندگان کمک کند تا پیچیدگی ترکیب آسنکرون سرویس‌های پیچیده از قسمت‌های کوچکتر را مدیریت کنند و آن‌ها را از شر سر و کله زدن با نگرانی هایی مثل شکست، لتنسی، امنیت و کارآمدی راحت کند.
برای تیم برنامه نویسی ابری من در مایکروسافت، یادداشت Ozzie، بیدارباشی بود تا بر روی ابداع  یک مدل برنامه نویسی ساده برای ساخت معماری‌های سرویس اینترنتی آسنکرون با مقیاس بزرگ و data-intensive تمرکز کنیم. پس از شروع‌های غلط زیاد، نهایتا به ما این را آموخت که با دوگانه کردن اینترفیس Iterable/Iterator برای کالکشن‌های سنکرون، می‌توان به یک جفت اینترفیس برای ارائه جریان‌های رویداد آسنکرون، با همه‌ی عملگر‌های ترتیبی آشنا مثل map، filter، scan، zip، groupBy و غیره رسید برای تبدیل و ترکیب جریان داده‌های آسنکرون، و بدین ترتیب Rx جایی در تابستان 2007 متولد شد. در طول پروسه پیاده سازی ما فهمیدیم که باید همزمانی و زمان را مدیریت کنیم و برای آن ما ایده‌ی اجرا گرهای جاوا با زمان مجازی و برنامه ریزی مجدد اشتراکی را گسترش دادیم.
پس از دو سال سخت، hackathon جایی بود که انتخاب‌های طراحی زیادی را کشف کردیم، ما ابتدا Rx.NET را در 18 نوامبر سال 2009 بیرون دادیم. پس از آن زود ما Rx را به Microsoft.Phone.Reactive برای windows phone 7 پورت کردیم و به این منجر شد که Rx در زبان‌های متعدد دیگری مثل جاوا اسکریپت، ++C و به صورت نسخه‌های آزمایشی در روبی و Objective-C پیاده سازی شود.
همان طور که Rx در صنعت محبوب‌تر می‌شد، ما Microsoft Open Tech را متقاعد کردیم تا Rx .NET را در پاییز 2012 متن باز کند. پس از آن من مایکروسافت را ترک کردم تا 100 درصد از زمانم را روی Rx بگذارم تا آن را تبدیل به API ای cross-language و cross-platform برای پردازش دادهای استریم بلادرنگ آسنکرون کنم.
در کتاب برنامه نویسی Reactive با RxJava – ساخت برنامه‌های آسنکرون رویداد محور، با این که جزئیات RxJava مقداری متفاوت از پیاده سازی‌های دیگر Rx است، اما هنوز هم مخصوص همه‌ی شما توسعه دهندگانی ساخته شده است که احتیاج به زنده ماندن در دنیای جدیدی از پردازش داده‌های توزیع شده بلادرنگ دارند و می‌خواهند بر روی پیچیدگی‌های مورد احتیاج تمرکز کنند بدون اینکه درگیر پیچیدگی‌های تصادفی شوند که زندگی را به کامشان تلخ می‌کنند.

 

تعداد بازدید: ۷۵
دیدگاه ها: ۰
تاریخ: ۱۰:۱۵:۲۲ ۱۳۹۶/۱۱/۲۰ جمعه
توسط: MotoMan
امتیاز: ۴

توانایی توسعه برنامه‌های تحت وبی که خیلی کارآمد ولی همچنان به آسانی قابل نگهداری باشند به امری ضروری برای خیلی از کسب و کار‌ها تبدیل شده است. ASP.NET Core 2.0 فریمورکی متن باز از مایکروسافت است که ساخت برنامه‌های تحت وب کراس پلتفرم مدرن و پویا را آسان می‌کند. این کتاب شما را با تمامی مفاهیم ضروری ASP.NET Core 2.0 آشنا می‌سازد تا یاد بگیرید چگونه برنامه‌های تحت وب قدرتمند بسازید.

کتاب یادگیری ASP.NET Core 2.0، با مقدمه ای مختصر از فریمورک ASP.NET Core و بهبود هایی که در آخرین نسخه‌ی آن یعنی ASP.NET Core 2.0 انجام شده است، شروع می‌شود. پس از آن شما اولین برنامه وب خود را به سرعت بیلد، تست و دیباگ می‌کنید. به محض این که شما ساختار پایه ای برنامه‌های وب ASP.NET Core 2.0 را فهمیدید، وارد مفاهیم و سناریو‌های پیچیده‌تر می‌شوید.

در ادامه، ما چگونگی بهره گیری از مزیت‌های فریمورک‌های پر استفاده مثل Model View Controller و Entity Framework Core 2 را شرح می‌دهیم و یاد خواهید گرفت که چگونه برنامه خود را امن کنید. در انتها ما به شما نشان می‌دهیم که به چه شکل برنامه‌های خود را با استفاده از Azure، AWS و Docker منتشر و مانیتور کنید.

پس از مطالعه این کتاب شما باید بتوانید برنامه‌های تحت وب کارآمد و قدرتمند را با ASP.NET Core 2.0 توسعه دهید که بیشترین رضایت مشتری را در پی داشته باشد.

 

تعداد بازدید: ۱۵۳
دیدگاه ها: ۲
تاریخ: ۲۲:۵۱:۱۷ ۱۳۹۶/۱۱/۱۸ چهارشنبه
توسط: MotoMan
امتیاز: ۶
برچسب ها: C Sharp| .NET Core|

کتاب‌های هزاران صفحه ای از #C وجود دارند که هدفشان تبدیل شدن به عنوان مرجعی جامع برای زبان برنامه نویسی #C و NET Framework. است.  اما این کتاب متفاوت است؛ کتاب C# 7.1  و Net Core 2.0. – توسعه مدرن کراس پلتفرم، مختصر و جمع و جور است و هدفش  این است که بتوان آن را به سرعت خواند. من این کتاب را نوشتم تا تبدیل به بهترین راهنمای گام به گام برای یادگیری روش‌های کراس پلتفرم مدرن اثبات شده #C با استفاده از NET Core. باشد.

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

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

تعداد بازدید: ۱۸۹
دیدگاه ها: ۵
تاریخ: ۱۹:۵۱:۴۱ ۱۳۹۶/۱۱/۱۸ چهارشنبه
توسط: MotoMan
امتیاز: ۱
برچسب ها: Fuzzy Logic|

انگیزه‌های اصلی من برای نوشتن ویرایش چهارم این کتاب عبارتند از: 1) کاهش دادن متن کتاب، 2) اصلاح غلط‌های پیدا شده از زمان انتشار ویرایش سوم و 3) معرفی کردن مطالب جدید به صورت محدود برای خوانندگان. انگیزه‌ی اولم  از طریق حذف قسمت هایی که به ندرت در کلاس‌های درس تدریس می‌شدند و بخش هایی که کمکی به یاد گیری اصل موضوع نمی‌کردند، محقق شد.

از زمان انتشار ویرایش اول در سال 1995، تکنولوژی نظریه مجموعه فازی و کاربرد‌های آن در سیستم هایی که از منطق فازی استفاده می‌کردند، به سرعت رشد پیدا کرد. پیشرفت‌ها  در نظریه‌های دیگر مثل نظریه احتمالات و نظریه شواهد ( هر دو عضوی از یک مجموعه ای بزرگتر از روش‌ها تحت عنوان "نظریه‌های اطلاعات عمومی) کاربرد‌های واقعی منطق فازی را روشن‌تر می‌کنند و برخی از پیشرفت‌ها در محاسبه ماشین، ویژگی‌های خاص منطق فازی را نسب به گذشته مفید‌تر کرده اند. حقیقتا منصفانه است که بگوییم برخی پیشرفت‌ها درسیستم‌های فازی نسبت به روش‌های مبتنی بر جبر خطی از لحاظ سرعت محاسبه و دقت مربوطه کاملا رقابتی ظاهر شده اند.

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

همان طور که در مقدمه ویرایش سوم نیز بحث کردم، اصول یک نظریه احتمالات به عنوان طرد شق ثالث نامیده می‌شوند همان طور که در این ویرایش نیز دوباره اصول نامیده میشوند نه قوانین. عملیات ناشی ازدمورگان نیز نه به عنوان قوانین بلکه به عنوان اصول نامیده می‌شوند چرا که این اصول برای برخی از ( نه همه) تئوری‌های عدم قطعیت (مثل احتمالات و فازی) صدق می‌کند. اصل طرد شق ثالث (و دوگانش، اصل تناقض) قوانین نیستند؛ نیوتون قوانین ایجاد کرد، کپلر قوانین ایجاد کرد، داری، بویل، اهم، کیرشهف، برنولی و خیلی‌های دیگر که می‌توان ایجا لیستشان کرد همگی قوانین ساخته اند. قوانین عبارات ریاضی هستند که  درک‌های تغییر ناپذیر طبیعت را توصیف می‌کنند. تعاریف، نظریه‌ها و اصول در مجموع می‌توانند یک اصل اساسی مشخص که توصیف کننده‌ی یک نوع مشخص از نظریه است را توضیف کنند نه بیشتر. در این مورد طرد شق ثالث و اصول دیگررا می‌توان برای شرح دادن یک نظریه احتمالات استفاده کرد. از این رو اگر یک نظریه مجموعه فازی اتفاق نمی‌افتد تا توسط اصل طرد شق ثالث محدود شود، این نقض بعضی از قوانین تغییر ناپذیر طبیعت مثل قوانین نیوتون نیست.

 

تعداد بازدید: ۶۸
دیدگاه ها: ۰
تاریخ: ۲۰:۱۲:۵ ۱۳۹۶/۱۱/۱۱ چهارشنبه
توسط: MotoMan
امتیاز: ۶
برچسب ها: Java Script| AngularJS| SPA|

کتاب ng-2 راهنمای کامل انگولار 5؛ هدفش تبدیل شدن به تنها منبع مفید برای یادگیری Angular است.  زمانی که خواندن این کتاب را تمام کردید، شما ( و تیمتان) هر چیزی را که برای ساخت برنامه‌های قدرتمند و مطمئن انگولار احتیاج داشته باشید، در اختیار دارید.

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

تعداد بازدید: ۳۳۶
دیدگاه ها: ۲
تاریخ: ۲۲:۵۱:۴۲ ۱۳۹۶/۱۱/۹ دوشنبه
توسط: MotoMan
امتیاز: ۰
برچسب ها: Data Structures| CPP| Algorithms|

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

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

کتاب تحلیل ساختمان‌های داده و الگوریتم‌ها در سی پلاس پلاس؛ راهنمایی جامع با تمرکز بر روی ایجاد ساختمان‌های داده و الگوریتم‌های با راندمان بالا است. این کتاب چگونگی انتخاب و یا طراحی مناسبترین ساختمان داده برای یک مسئله را بیان کرده است. در این کتاب از ++C  به عنوان زبان برنامه نویسی استفاده شده است.

تعداد بازدید: ۱۲۵
دیدگاه ها: ۰
بیشتر
loading...

لطفا منتظر بمانید...