تازه ترین کتاب ها
تاریخ: ۲۳:۵۴:۵۹ ۱۳۹۹/۱/۱۸ دوشنبه
توسط: MotoMan
امتیاز: ۲
برچسب ها: ElasticSearch|

الستیک‌سرچ (Elasticsearch)، یک سرور جستجوی توزیع شده مبتنی بر Lucene است که به کاربران این امکان را می‌دهد تا محتوا‌های بدون ساختار را با پتابایت‌ها داده، ایندکس و جستجو کنند. با استفاده از این کتاب، شما با کمک دستور العمل‌های جامع در مورد تازه‌های Elasticsearch 7 راهنمایی می‌شوید و نحوه ساختن و اجرای Query‌ها و تجزیه و تحلیل‌های پیچیده را مشاهده می‌کنید.

ویرایش چهارم کتاب Elasticsearch 7.0 Cookbook، دستور العمل‌های مربوط به انجام نگاشت ایندکس، aggregation و اسکریپت نویسی با استفاده از الستیک سرچ را شامل می‌شود. این کتاب شما را با راهکار‌های بیشمار و تکنیک‌های سریعی برای انجام کار‌های غیر متداول و همچنین کارهای روزمره مثل استقرار node‌های Elasticsearch، یکپارچه کردن ابزار‌های دیگر با Elasticsearch و ایجاد تصویرسازی‌های مختلف آشنا می‌کند. برای نظارت بر یک خوشه، Kibana را نصب خواهید کرد و همچنین با استفاده از افزونه‌های متنوع آن را گسترش می‌دهد. سرانجام،Java ،Scala ، Python و برنامه‌های کلان داده مانند Apache Spark و Pig را با Elasticsearch یکپارچه خواهید کرد و برنامه‌های داده ای کارآمد را با قابلیت‌های پیشرفته و افزونه‌های سفارشی ایجاد می‌کنید.

با به پایان رسیدن این کتاب، شما دانش عمیقی در مورد پیاده سازی معماری Elasticsearch کسب خواهید کرد و قادر خواهید بود که با استفاده از Elasticsearch، داده‌ها را بطور کارآمد و مؤثری مدیریت، جستجو و ذخیره کنید.

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

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

ساختمان داده‌ها به شما امکان می‌دهند تا داده‌ها را به صورتی کارآمد ذخیره و سازماندهی کنید. آنها برای هر مسئله ای بسیار مهم هستند، یک راه حل کامل ارائه می‌دهند و مانند کدی قابل استفاده مجدد عمل می‌کنند. ویرایش دوم کتاب Hands-On Data Structures and Algorithms with Python، ساختمان‌های داده اساسی پایتون و متداول‌ترین الگوریتم‌ها برای ساختن برنامه‌های آسان و قابل نگهداری را به شما آموزش می‌دهد.

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

این کتاب برای توسعه دهندگانی است که می‌خواهند ساختمان داده‌ها و الگوریتم‌های پایتون را یاد بگیرند تا برنامه‌های پیچیده و انعطاف پذیر بنویسند. در این کتاب دانستن دانش پایه برنامه نویسی پایتون انتظار می‌رود.

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

از سال 2008، دنیای پایتون شاهد تحول آهسته پایتون 3 است. همیشه مشخص بود که پذیرش پایتون 3 احتمالاً مدت زمان زیادی طول خواهد کشید. در حقیقت، حتی در زمان نوشتن این کتاب (2013)، بیشتر برنامه نویسان پایتون شاغل، همچنان از پایتون 2 در برنامه‌های خود استفاده می‌کنند. در مورد این حقیقت که پایتون 3 با نسخه‌های قبلی سازگار نیست، مطالب زیادی گفته شده است. از این رو، سازگاری عقبرو قطعا برای هر کسی که کدی با نسخه‌های قبلی دارد مشکل زا خواهد بود. با این حال، اگر دید خود را به سمت آینده تغییر دهید، خواهید فهمید که پایتون 3، بسیار بیشتر از آنچه که در ابتدا به نظر می‌رسد، ارائه می‌دهد.

اگر برای نوشتن برنامه با پایتون 3 احتیاج به کمک دارید و یا می‌خواهید کد پایتون 2 قدیمی‌تر خود را به روز کنید، این کتاب کاملا به درد شما می‌خورد. ویرایش سوم کتاب Python Cookbook که با دستورالعمل‌های عملی نوشته شده و تست شده با Python 3.3 تهیه شده است، برای برنامه نویسان با تجربه پایتون است که می‌خواهند روی ابزارها و اصطلاحات مدرن تمرکز کنند. در این کتاب، شما دستورالعمل‌های کاملی را برای بیش از ده‌ها موضوع خواهید یافت، که شامل اصل زبان پایتون و همچنین کارهایی است که برای طیف گسترده ای از حوزه‌های کاربردی رایج هستند. هر دستور العمل شامل نمونه کد هایی است که می‌توانید بلافاصله در پروژه‌های خود استفاده کنید.

تعداد بازدید: ۱۵۳
دیدگاه ها: ۳
تاریخ: ۲۰:۳۰:۱ ۱۳۹۹/۱/۱۵ جمعه
توسط: MotoMan
امتیاز: ۱
برچسب ها: WPF| MVVM| Windows|

تکنولوژی (Windows Presentation Foundation (WPF مایکروسافت، برای توسعه دهندگان چندین کتابخانه و API ارائه می‌دهد تا تجربه‌های کاربری جذاب ایجاد کنند. این کتاب دارای طیف گسترده ای از مثال‌های ساده و پیچیده برای نشان دادن چگونگی توسعه برنامه‌های کاربردی سازمانی با WPF برای دسکتاپ ویندوز است.

ویرایش دوم کتاب Mastering Windows Presentation Foundation، با پوشش مزایای استفاده از الگوی معماری نرم افزار (Model-View View-Model (MVVM با WPF شروع می‌شود قبل از اینکه شما را در دیباگ کردن برنامه‌های WPF خودتان راهنمایی کند. سپس این کتاب معماری برنامه و ساختن لایه پایه برای برنامه‌های خودتان را به تفصیل بیان می‌کند. همان طور که پیشرفت می‌کند، شما با انقیاد داده‌ها آشنا می‌شوید، کنترل‌های مختلف تعبیه شده WPF را بررسی می‌کنید و آن‌ها را مطابق با نیاز‌های خود سفارشی می‌کنید.

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

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

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

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

از آنجا که در آن زمان انتخاب‌های زیادی وجود داشت، برای ویرایش اول کتاب «معماری کامپیوتر: یک رویکرد کمی»، ما مجموعه دستورالعمل RISC-style خودمان را اختراع کردیم. با توجه به محبوبیت روزافزون و ظرافت ساده مجموعه دستورالعمل MIPS، برای ویرایش اول این کتاب و ویرایش‌های بعدی کتاب دیگر، به MIPS سوئیچ کردیم. MIPS به خوبی به ما و خوانندگان ما خدمت کرده است.

محبوبیت باورنکردنی مجموعه دستورالعمل ARM، باعث شد که برخی از مدرسان نسخه ای از کتاب مبتنی بر ARM را از ما درخواست کنند. ما حتی یک نسخه از آن را برای زیر مجموعه ای از فصل‌ها برای نسخه آسیایی این کتاب امتحان کردیم. افسوس، همانطور که می‌ترسیدیم، آرایش عجیب و غریب مجموعه دستورالعمل ARMv7 (آدرس 32 بیتی) برای تحمل ما بیش از حد بود، بنابراین ما تغییرات را دائمی نکردیم. در کمال تعجب، وقتی ARM یک مجموعه دستورالعمل آدرس 64 بیتی را ارائه داد، آنقدر تغییرات قابل توجهی ایجاد کرده بود که به نظر ما شباهت بیشتری به MIPS نسبت به ARMv7 در آن ایجاد کرده بود. اگرچه ARMv8 بسیار بزرگتر از MIPS است - کتابچه راهنمای مرجع معماری ARMv8 دارای 5400 صفحه است - ما زیر مجموعه ای از دستورالعمل‌های ARMv8 را پیدا کردیم که از نظر اندازه و طبیعت، مشابه با هسته MIPS است که در نسخه‌های قبلی استفاده شده است و ما برای جلوگیری از سردرگمی آنها را LEGv8 می‌نامیم. از این رو، ما این نسخه ARMv8 را نوشتیم.

با توجه به اینکه ARMv8 هر دو دستورالعمل‌های آدرس 32 بیتی و دستورالعمل‌های آدرس 64 بیتی را در همان مجموعه دستورالعمل ارائه می‌دهد، می‌توانستیم مجموعه‌های دستورالعمل را تغییر دهیم اما اندازه آدرس را در 32 بیت نگه داشته باشیم. ناشر ما از اساتیدی که از کتاب استفاده می‌کردند نظرسنجی کرد و دریافت که 75٪ یا آدرس‌های بزرگتر را ترجیح می‌دهند یا اهمیتی برایشان ندارد، بنابراین ما فضای آدرس را به 64 بیت افزایش دادیم که شاید امروزه منطقی‌تر از 32 بیتی باشد.

تعداد بازدید: ۹۳
دیدگاه ها: ۰
تاریخ: ۲۳:۳۵:۲ ۱۳۹۹/۱/۱۴ پنج شنبه
توسط: MotoMan
امتیاز: ۱
برچسب ها: Computer Architecture|

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

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

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

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

یادگیری ماشین (ML) در بسیاری از صنایع از جمله علوم، مراقبت‌های بهداشتی و تحقیقات بسیار مورد استفاده قرار می‌گیرد و محبوبیت آن فقط در حال رشد است. مایکروسافت در مارس سال 2018، ML.NET را برای کمک به علاقه مندان کار با یادگیری ماشین در NET. معرفی کرد. در این کتاب، با استفاده از #C نحوه ساخت برنامه‌های ML.NET را با مدل‌های مختلف ML موجود بررسی خواهید کرد.

کتاب Hands-On Machine Learning with ML.NET، با ارائه یک بررسی اجمالی از یادگیری ماشین (ML) و انواع الگوریتم‌های ML مورد استفاده، همراه با اینکه ML.NET چی هست است و چرا شما برای ساختن برنامه‌های ML  به آن نیاز دارد، آغاز می‌شود. سپس چارچوب ML.NET، کامپوننت‌ها و API‌های آن را بررسی خواهید کرد. این کتاب به عنوان یک راهنمای عملی برای کمک به شما در ساخت برنامه‌های هوشمند با استفاده از کتابخانه ML.NET ایفای نقش می‌کند. شما به تدریج در چگونگی پیاده سازی الگوریتم‌های یادگیری ماشین مانند رگرسیون، دسته بندی و خوشه بندی با مثال‌ها و مجموعه داده‌های دنیای واقعی کاملاً مسلط خواهید شد. هر فصل پیاده سازی عملی را پوشش می‌دهد و نحوه پیاده سازی ML را در برنامه‌های NET. نشان می‌دهد. همچنین یاد می‌گیرید که TensorFlow را با برنامه‌های ML.NET یکپارچه کنید. سپس می‌توانید نحوه ذخیره نتیجه پیش بینی قیمت مسکن مدل رگرسیون را در پایگاه داده را بررسی کرده و نتایج پیش بینی شده بلادرنگ از پایگاه داده را روی برنامه وب خود با استفاده از ASP.NET Core Blazor و SignalR نمایش دهید. در پایان این کتاب، شما آموخته اید که چگونه با اطمینان کار‌های یادگیری ماشین سطح پایه تا پیشرفته را با ML.NET انجام دهید.

اگر شما یک توسعه دهنده دات نت هستید که می‌خواهید مدل‌های یادگیری ماشین را با استفاده از ML.NET پیاده سازی کنید، این کتاب برای شما مناسب است. این کتاب همچنین برای دانشمندان داده و توسعه دهندگان یادگیری ماشین که به دنبال ابزارهای مؤثر برای پیاده سازی الگوریتم‌های مختلف یادگیری ماشین هستند، مفید خواهد بود. دانش پایه ای از سی شارپ یا دات نت برای درک مؤثر مفاهیم این کتاب ضروری است.

تعداد بازدید: ۲۴۸
دیدگاه ها: ۰
تاریخ: ۲۱:۳۴:۴ ۱۳۹۹/۱/۱۱ دوشنبه
توسط: MotoMan
امتیاز: ۰
برچسب ها: SQL| Database|

زبان‌های برنامه نویسی مدام می‌آیند و می‌روند و تعداد بسیار کمی از زبان‌ها که امروزه در حال استفاده هستند ریشه هایشان به بیش از یک دهه قبل یا بیشتر بر می‌گردد. یکی از نمونه‌ها COBOL است که هنوز هم در محیط‌های mainframe به شدت مورد استفاده قرار می‌گیرد؛ جاوا، که در اواسط دهه 1990 متولد شد و به یکی از محبوب‌ترین زبان‌های برنامه نویسی تبدیل شده است؛ و C، که هنوز هم برای سیستم عامل‌ها و توسعه سرور و سیستم‌های تعبیه شده کاملاً محبوب است. در عرصه پایگاه داده، ما SQL را داریم که ریشه هایش به دهه 1970 باز می‌گردد.

زبان SQL در ابتدا به عنوان زبانی برای تولید، دستکاری و بازیابی اطلاعات از پایگاه داده‌های رابطه ای ایجاد شد و اکنون بیش از 40 سال است که وجود دارد. با این حال در طول دهه گذشته یا کمی بیشتر، دیگر پلتفرم‌های داده مانند Hadoop، Spark و NoSQL مقبولیت زیادی را به دست آورده اند و بازار پایگاه داده‌های رابطه ای را به تدریج تحت تاثیر قرار داده اند. همانطور که در چند فصل آخر این کتاب مورد بحث قرار خواهد گرفت، با این حال، زبان SQL برای تسهیل بازیابی داده‌ها از پلتفرم‌های مختلف، صرف نظر از اینکه داده‌ها در جداول، اسناد یا فایل‌های مسطح ذخیره شده باشند، در حال پیشرفت است.

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

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

 

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

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

استفاده از تمام قدرت پایتون، نیاز نیست که مشکل باشد. کتاب Python Supercharged برای افرادی که اصول زبان پایتون را آموخته اند ولی به دنبال ارتقای مهارت‌های خود هستند نوشته شده است. با استفاده از رویکرد مبتنی بر مثال در Python بدون ترس، Brian Overland و John Bennett با مثالهای ساده شروع می‌کنند و به دقت برنامه‌های پیچیده‌تری را می‌سازند. نویسندگان کتاب، پس از مرور مختصر مفاهیم اساسی پایتون، مباحث پیشرفته‌تری را از جمله قالب بندی متن، عبارت‌های منظم و ترسیم نمودارها به دقت توضیح می‌دهند.

این کتاب تکنیک‌های پیشرفته را برای کلاس‌های لیست و رشته بررسی می‌کند و پس از آن کلیه روش‌های پردازش متن و فایل‌های باینری را بررسی می‌کند؛ اعشاری، پول و سایر کلاسهای ویژه؛ تکنیک‌های پیشرفته برای نوشتن کلاس ها؛ generator‌ها و decorator ها؛ و بسته‌های تصادفی، ریاضی و (Numpy (Numeric Python، که می‌توانند برنامه‌های شما را فوق العاده کنند.

کتاب Supercharged Python تکنیک هایی را نشان می‌دهد که به شما امکان می‌دهند تا کد سریعتر و قدرتمند‌تری بنویسید، خواه مقدار زیادی از داده‌ها را دستکاری می‌کنید و یا برنامه‌های پیشرفته می‌سازید.

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

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

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

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

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

ویرایش دهم کتاب Computer Organization and Architecture، پوشش جامعی از کل زمینه طراحی کامپیوتر است که با جدیدترین تحقیقات و نوآوری‌ها در ساختار و عملکرد کامپیوتر به روز شده است. با مطالبی واضح، مختصر و به آسانی قابل خواندن، ویرایش دهم این کتاب برای افرادی که کامپیوتر تحصیل می‌کنند، منبعی کاربر پسند است. موضوعاتی از قبیل توابع و ساختارهای I/O، معماری RISC و پردازنده‌های موازی با مثال‌های واقعی که کتاب را برای علاقه خواننده تقویت می‌کنند تماما یکپارچه بررسی می‌شوند. با استفاده از مطالب کاملاً جدید و تعلیم و آموزش تقویت شده، این کتاب خوانندگان را با دنیای سازماندهی و معماری کامپیوتر درگیر می‌کند.

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

سبک معماری میکرو سرویس‌ها موجب توسعه برنامه‌های پیچیده به عنوان مجموعه ای از سرویس‌های کوچک بر اساس توانایی‌های خاص تجاری می‌شود. این کتاب رویکردی عملی برای ایجاد و بکارگیری میکرو سرویس‌ها با استفاده از ASP.Net Core و Microsoft Azure فراهم کرده است.

در ویرایش سوم کتاب Hands-On Microservices with C# 8 and .NET Core 3.0، میکرو سرویس‌ها و ویژگی‌های اصلی آنها را یاد می‌گیرید. در اینجا ما یک برنامه واقعی را که به شکل monolith ساخته شده است را معرفی می‌کنیم که در حال حاضر با افزایش تقاضا و پیچیدگی دست و پنجه نرم می‌کند و با استفاده از آخرین قابلیت‌های C# 8 و NET Core 3.، شروع به انتقال آن به میکرو سرویس‌ها می‌کنیم. شما می‌آموزید که چگونه مرزهای سرویس را مشخص، برنامه را به چندین میکرو سرویس تقسیم و قراردادهای سرویس را تعریف کنید. شما همچنین نحوه پیکربندی، استقرار و نظارت بر میکرو سرویس‌ها را با استفاده از Docker و Kubernetes خواهید آموخت. سپس شما پیاده سازی مقیاس پذیری خودکار در معماری میکرو سرویس‌ها را برای ارتقا بهره وری خودتان یاد می‌گیرید. با مقدمه ای بر میکرو سرویس‌های reactive، ارزش بیشتری را با ساده نگه داشتن کدتان و تمرکز بر آنچه که مهمتر از فراخوانی‌های آسنکرون در هم بر هم است به دست می‌آورید. در پایان، الگوهای طراحی مختلف و بهترین شیوه‌ها برای ایجاد برنامه‌های میکرو سرویس سازمانی، بررسی خواهید کرد. در پایان این کتاب، شما قادر خواهید بود تا یک مونولیت را با موفقیت شکسته و میکروسرویس‌های خوبی را بسازید.

این کتاب برای توسعه دهندگان سی شارپ و NET Core. است که می‌خواهند معماری میکرو سرویس‌ها را یاد گرفته و درک کنند و آن را در برنامه‌های NET Core. خود پیاده کنند. این کتاب برای توسعه دهندگانی ایده آل است که با میکرو سرویس‌ها تازه آشنا شده اند و یا فقط درکی تئوری از این رویکرد معماری دارند و می‌خواهند یک چشم انداز عملی به منظور مدیریت بهتر پیچیدگی برنامه به دست آورند.

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

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

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

در ویرایش ششم کتاب Computer Architecture: A Quantitative Approach مثل نسخه‌های قبلی اش، ما سعی کرده ایم نسخه جدیدی تولید کنیم که همچنان برای مهندسان حرفه ای و معماران و کسانی که در دوره‌های معماری و طراحی کامپیوتر پیشرفته شرکت می‌کنند، مناسب باشد. مانند ویرایش اول، این ویرایش تمرکز شدیدی روی پلتفرم جدید - دستگاه‌های تلفن همراه شخصی و کامپیوتر‌های مقیاس انبار - و معماری‌های جدید - به طور خاص، معماری‌های خاص دامنه دارد. به همان اندازه پیشینیان خود، این نسخه با هدف روشن کردن معماری کامپیوتر از طریق تأکید بر موازنه‌های مربوط به هزینه-عملکرد-انرژی و طراحی مهندسی خوب، ارائه شده است. ما معتقدیم که این رشته همچنان به بلوغ و حرکت به سمت پایه و اساس کمی خیلی دقیقی رشته‌های علمی و مهندسی دیرپا ادامه می‌دهد.

 

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

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

ویرایش چهارم کتاب Django 3 Web Development Cookbook، شما را در هر مرحله از روند توسعه وب با چارچوب جنگو 3.0 راهنمایی می‌کند. ما با پیکربندی و ساختار پروژه شروع می‌کنیم. سپس یاد می‌گیرید که چگونه ساختار پایگاه داده را با مؤلفه‌های قابل استفاده مجدد تعریف کنید و آن را در طول مدت پروژه خود چگونه مدیریت کنید. سپس این کتاب، برای ورود و نمایش داده‌ها به سراغ فرم‌ها و view‌ها می‌رود. ما برای تقویت تجربه کاربری، به استفاده از قالب‌های پاسخگو و جاوا اسکریپت اقدام می‌کنیم. سپس ما سیستم قالب Django را با فیلترها و برچسب‌های سفارشی شده تقویت خواهیم کرد تا برای توسعه frontend انعطاف پذیر‌تر باشد. پس از این، شما به منظور ساده کردن گردش کار ویرایشگران محتوا، رابط کاربری مدیریت را تنظیم خواهید کرد. از آنجا، ما تمرکز خود را به پایداری و استحکام پروژه خود تغییر می‌دهیم و به امنیت و بهینه سازی برنامه‌های شما کمک می‌کنیم.

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

برخلاف بسیاری از کتاب‌های جنگو که تنها به خود چارچوب مربوط می‌شوند، این کتاب چندین ماژول مهم شخص ثالث را پوشش می‌دهد که شما را به ابزارهای لازم برای توسعه وب کامل مجهز می‌کنند. علاوه بر این، ما با استفاده از چارچوب فرانت اند Bootstrap و کتابخانه جاوا اسکریپتjQuery ، مثال هایی را ارائه می‌دهیم که هر دو ایجاد رابط‌های کاربری پیشرفته و پیچیده را ساده می‌کنند. این کتاب از طریق آپلود کردن و پردازش تصاویر، رندر کردن داده‌ها در HTML5، PDF و Excel، استفاده و ایجاد API ‌ها و هدایت انواع داده‌های مختلف در جنگو، شما را هدایت می‌کند. همچنین می‌توانید دستور العمل‌های پیشرفته ای برای استفاده از جنگو با Docker و Ansible در محیط‌های توسعه، staging و تولید را کشف کنید.

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

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

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

کتاب Secure by Design، اصول و بهترین شیوه‌ها را برای نوشتن نرم افزارهای بسیار امن به شما یاد می‌دهد. در سطح کد، ساختارهای ارتقاء دهنده امنیت مانند استفاده از مدیریت خطای ایمن، اعتبار سنجی ایمن و domain primitive‌ها را بررسی خواهید کرد. شما همچنین تکنیک‌های امنیت محوری را که می‌توانید در سراسر خط لوله build-test-deploy را استفاده کنید یاد می‌گیرید؛ از جمله نگرانی‌های منحصر به فرد در مورد میکرو سرویس‌های مدرن و طراحی‌های cloud-native.

تعداد بازدید: ۲۱۸
دیدگاه ها: ۱
تاریخ: ۱۷:۱۶:۸ ۱۳۹۹/۱/۶ چهارشنبه
توسط: MotoMan
امتیاز: ۱
برچسب ها: Digital Design|

این کتاب در مورد فن آوری‌های مدرن اجرای مدار دیجیتال بحث می‌کند. تأکید بر روی دستگاه‌های منطقی قابل برنامه ریزی (PLDs) است که به دو دلیل مناسب‌ترین فناوری برای استفاده در یک کتاب درسی است. اول، PLD‌ها به طور گسترده ای در عمل مورد استفاده قرار می‌گیرند و تقریباً برای طراحی انواع مدارهای دیجیتال مناسب هستند. در حقیقت، دانشجویان در مقطعی از مشاغل خود بیشتر از هر فناوری دیگری درگیر طرح‌های مبتنی بر PLD می‌شوند. دوم، مدارها با برنامه نویسی مصرف کننده نهایی در PLD‌ها پیاده سازی می‌شوند. بنابراین، در محیط آزمایشگاه فرصتی برای دانشجویان فراهم می‌شود تا مثال‌های طراحی کتاب را بر روی تراشه‌های واقعی پیاده سازی کنند. دانشجویان همچنین می‌توانند رفتار مدارهای طراحی شده خود را در رایانه‌های شخصی خود شبیه سازی کنند. ما برای هدف گیری طرح‌ها از دو نوع محبوب‌ترین PLDs استفاده می‌کنیم: دستگاه‌های منطقی قابل برنامه ریزی پیچیده (CPLDs) و آرایه‌های دروازه قابل برنامه ریزی در محل (FPGAs).

ما در مشخص کردن مدارهای منطقی، در استفاده از یک زبان توصیف سخت افزاری تأکید می‌کنیم، زیرا رویکرد مبتنی بر HDL کارآمدترین روش طراحی برای استفاده در عمل است. ما به طور مفصل زبان  Verilog HDL استاندارد IEEE را شرح می‌دهیم و از آن در مثال‌ها به طور گسترده استفاده می‌کنیم. ویرایش سوم کتاب Fundamentals of Digital Logic with Verilog Design، تکنیک‌های اصلی طراحی مدار‌های منطقی را آموزش می‌دهد. اصول منطق دیجیتال با طراحی Verilog، روش‌های اصلی طراحی مدارهای منطقی را آموزش می‌دهد. این کتاب، بر تلفیق مدارها تأکید می‌کند و نحوه اجرای مدارها را در تراشه‌های واقعی توضیح می‌دهد. همچنین مفاهیم اساسی با استفاده از مثال‌های کوچک نشان داده شده اند.

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

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

ویرایش دوم کتاب Digital Design and Computer Architecture،  رویکردی مدرن و منحصر به نفر را در طراحی دیجیتالی اتخاذ کرده و خواننده را با اصول منطق دیجیتال آشنا می‌کند و سپس گام به گام نحوه ساخت ریزپردازنده MIPS را با Verilog و VHDL نشان می‌دهد. این ویرایش جدید، ترکیبی از سبک نوشتن جذاب و طنزآمیز را با یک رویکردی به روز و عملی در طراحی دیجیتال ترکیب کرده است. این کتاب محتوای جدیدی را در مورد سیستم‌های I/O در زمینه پردازنده‌های چند منظوره که در یک کامپیوتر شخصی و همچنین میکروکنترلرها که تقریبا در همه جا یافت می‌شوند ارائه می‌دهد.

این کتاب با شروع از دروازه‌های منطقی دیجیتال و پیشرفت در طراحی مدارهای ترکیبی و ترتیبی، از این بلوک‌های ساختاری اساسی به عنوان پایه ای برای طراحی یک پردازنده MIPS واقعی استفاده می‌کند. این کتاب، مثال‌های عملی در مورد چگونگی ارتباط با وسایل جانبی با استفاده ازRS232 ، SPI، کنترل موتور، وقفه ها، بی سیم و تبدیل آنالوگ به دیجیتال را ارائه می‌دهد.  SystemVerilogو VHDL در مثال هایی که روش‌ها و تکنیک‌های طراحی مدار مبتنی بر CAD را نشان می‌دهند، در سراسر متن کتاب آورده شده اند. همچنین تمرین‌های اضافی و مثال‌های جدیدی از معماری‌های موازی و پیشرفته، برنامه‌های کاربردی I/O، سیستم‌های تعبیه شده و محاسبات ناهمگن وجود دارد، به علاوه یک ضمیمه جدید در مورد برنامه نویسی C برای تقویت ارتباط بین برنامه نویسی و معماری پردازنده.

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

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