کتاب های برچسب Coding
تاریخ: 1402/10/30 23:23
توسط: MotoMan
امتیاز: ۰
برچسب ها: Coding |software engineering |

کتاب System Design Interview – An Insider's Guide Volume 2 (مصاحبه طراحی سیستم – راهنمای داخلی جلد دوم)، را می‌توان دنباله‌ای بر کتاب: مصاحبه System Design Interview - An Insider’s Guide دانست. این جلد، مجموعه متفاوتی از سوالات و راه حل‌های مصاحبه طراحی سیستم را پوشش می‌دهد. اگرچه خواندن جلد اول مفید است، اما لازم نیست. این کتاب باید برای خوانندگانی که درک اولیه ای از سیستم‌های توزیع شده دارند قابل استفاده است
این جلد کتاب، یک استراتژی قابل اعتماد و پایگاه دانش برای نزدیک شدن به طیف گسترده ای از سوالات طراحی سیستم که ممکن است با آنها روبرو شوید فراهم می‌کند. این به شما کمک می‌کند تا در این مصاحبه مهم اعتماد به نفس داشته باشید. این کتاب یک چارچوب گام به گام برای چگونگی مقابله با یک سوال طراحی سیستم ارائه می‌دهد. همچنین شامل بسیاری از نمونه‌های دنیای واقعی برای نشان دادن یک رویکرد سیستماتیک، با مراحل دقیق و به خوبی توضیح داده شده است که می‌توانید دنبال کنید.

 

 
تعداد بازدید: ۴۳۶۳
دیدگاه ها: ۰
تاریخ: 1401/11/01 21:25
توسط: MotoMan
امتیاز: ۳
برچسب ها: Coding |Computer Architecture |

کتاب Computer Systems: A Programmer's Perspective 3rd Edition (سیستم‌های کامپیوتری: از دید برنامه نویس، ویرایش سوم)، عناصر اساسی مشترک در بین تمام سیستم‌های کامپیوتری و نحوه تاثیر آنها بر عملکرد کلی برنامه را توضیح می‌دهد. این کتاب که از دیدگاه برنامه نویس نوشته شده است، تلاش می‌کند به خوانندگان بیاموزد که چگونه درک عناصر اساسی سیستم‌های کامپیوتری و اجرای تمرین واقعی می‌تواند آنها را به سمت ایجاد برنامه‌های بهتر سوق دهد.
ویرایش سوم کتاب که در سراسر موضوعات علوم کامپیوتر مانند معماری سخت افزار، سیستم عامل و سیستم‌های نرم افزاری قرار دارد، به عنوان مقدمه ای جامع برای برنامه نویسی عمل می‌کند. این کتاب در تلاش است تا برنامه نویسانی تربیت کند که تمام عناصر سیستم‌های کامپیوتری را درک کنند و بتوانند در هر کاربرد این رشته، از رفع نرم افزار معیوب گرفته تا نوشتن برنامه‌های توانمندتر و اجتناب از ایرادات رایج مشارکت داشته باشند.
این کتاب، زمینه را برای خوانندگان فراهم می‌کند تا به موضوعات متمرکز‌تر مانند معماری کامپیوتر، سیستم‌های تعبیه شده و امنیت سایبری بپردازند. این کتاب بر روی سیستم هایی تمرکز دارد که کد ماشین x86-64 را اجرا می‌کنند و به برنامه نویسان توصیه می‌کند که برای این دوره به یک سیستم لینوکس دسترسی داشته باشند. برنامه نویسان باید با C یا C++ آشنایی اولیه داشته باشند.

 

 
تعداد بازدید: ۳۳۵۶
دیدگاه ها: ۰
تاریخ: 1401/05/01 22:56
توسط: MotoMan
امتیاز: ۰
برچسب ها: Coding |

کامپیوتر‌ها همه جا هستند؛ به وضوح از لپ‌تاپ‌ها و تلفن‌های هوشمند ما گرفته تا ماشین‌ها، تلویزیون‌ها، اجاق‌های مایکروویو، ساعت‌های زنگ دار، جاروبرقی‌های روباتی و سایر لوازم هوشمند ما. آیا تا به حال به این فکر کرده اید که چه چیزهایی در داخل این دستگاه‌ها می‌گذرد تا زندگی ما را آسان‌تر کنند یا گاهی اوقات هم خشمگین‌تر کنند؟
برای بیش از 20 سال، خوانندگان از خواندن داستان روشنگر چارلز پتزولد از زندگی پنهانی درونی کامیپوتر‌ها لذت می‌بردند و اکنون او آن را برای این عصر جدید محاسبات بازنگری کرده است. این کتابی است که هوشمندانه مصور شده و درک آن آسان است و راز و رمز‌ها را می‌شکافد. متوجه خواهید شد که چراغ قوه ها، گربه‌های سیاه، الاکلنگ، و سواری پل ریور (Paul Revere) می‌توانند به شما در مورد محاسبات بیاموزند و چگونه نبوغ انسان و اجبار ما برای برقراری ارتباط، هر وسیله الکترونیکی را که استفاده می‌کنیم شکل داده است.
کتاب Code: The Hidden Language of Computer Hardware and Software, 2nd Edition (کد: زبان پنهان سخت افزار و نرم افزار کامپیوتر، ویرایش دوم)، به کاوش عمیق‌تر بیت به بیت و گیت به گیت ساختار قلب هر دستگاه هوشمندی می‌پردازد، واحد پردازش مرکزی که ساده‌ترین عملیات‌های اساسی را برای انجام پیچیده‌ترین شاهکارها ترکیب می‌کند. همراه با فصل‌های جدید، پتزولد یک وب‌سایت جدید به نام CodeHiddenLanguage.com ایجاد کرده است که از گرافیک‌های متحرک تعاملی برای درک راحت‌تر کامپیوتر‌ها استفاده می‌کند. از تیک تاک ساده ساعت گرفته تا زمزمه جهانی اینترنت، کتاب کد، ماهیت انقلاب دیجیتال را آشکار می‌کند.

 

تعداد بازدید: ۴۶۲۵
دیدگاه ها: ۰
تاریخ: 1401/03/06 23:23
توسط: MotoMan
امتیاز: ۰
برچسب ها: Coding |

مغز شما زمانی که با کارهای جدید یا دشوار روبرو می‌شود به روشی قابل پیش بینی پاسخ می‌دهد. درک عملکردهای شناختی که بر نحوه تفکر مغز شما در مورد کدنویسی حاکم است به شما کمک می‌کند تا هوشمندتر کار کنید و نه سخت تر. شما با کمک این کتاب بهره وری خود را بهبود خواهید بخشید، نیاز خود را به بازنویسی‌های مداوم کاهش خواهید داد و به گذراندن شب‌ها تا دیروقت برای سر  کله زدن با زبان‌های جدید خداحافظی خواهید کرد.
کتاب The Programmer’s Brain (مغز برنامه نویس)، به شما تکنیک‌های واقعی می‌آموزد که ریشه در علوم شناختی دارند و نحوه یادگیری و تفکرتان در مورد کد را بهبود می‌بخشد. شما به روش‌های عملی برای بکارگیری این اصول شناختی در زندگی روزمره برنامه نویسی خودتان، مسلط خواهید شد. شما با تبدیل سردرگمی به یک ابزار یادگیری، درک کد خود را بهبود می‌بخشید و تکنیک‌های عالی برای خواندن کد و به خاطر سپردن سریع نحو را انتخاب می‌کنید. این راهنمای عملی شامل نکاتی برای ایجاد فلش کارت‌ها و منابع مطالعاتی است که می‌تواند برای هر زبان جدیدی که می‌خواهید به آن مسلط شوید، بکار گرفته شود. زمانی که این کتاب را به پایان رساندید، نه تنها در آموزش خود بهتر خواهید بود، بلکه در راه انداختن همکاران جدید و برنامه نویسان جوان نیز متخصص خواهید بود.

 

تعداد بازدید: ۲۹۵۷
دیدگاه ها: ۰
تاریخ: 1401/02/10 21:45
توسط: MotoMan
امتیاز: ۱
برچسب ها: Coding |software engineering |

در کتاب Software Development, Design and Coding (توسعه نرم افزار، طراحی و کدنویسی)، اصول طراحی نرم افزار خوب و نحوه تبدیل آن اصول به کدی عالی را خواهید آموخت. این کتاب، شما را با مهندسی نرم افزار، از کاربرد اصول مهندسی تا توسعه نرم افزار آشنا می‌کند. شما چگونگی اجرای یک پروژه‌ی نرم افزاری را خواهید دید، مراحل مختلف یک پروژه را بررسی می‌کنید و نحوه‌ی طراحی و پیاده سازی برنامه‌ها را به منظور حل مشکلات خاصی یاد خواهید گرفت. این کتاب همچنین درباره‌ی ساختن کد است؛ چگونه برنامه‌های عالی بنویسید و آن‌ها را به کار بیندازید.
چه در برنامه نویسی تازه کار باشید و چه صدها برنامه کاربردی نوشته باشید، در این کتاب کارهایی را که قبلا انجام داده اید را دوباره بررسی خواهید کرد و راه‌های بهبود را بررسی خواهید کرد. با استفاده از زبان جاوا، شما عمیقاً به استانداردهای کدنویسی، اشکال زدایی، تست واحد، ماژولار بودن و سایر ویژگی‌های برنامه‌های خوب نگاه خواهید کرد.

 

تعداد بازدید: ۳۲۰۶
دیدگاه ها: ۰
تاریخ: 1401/02/09 17:10
توسط: MotoMan
امتیاز: ۰
برچسب ها: Coding |software engineering |

به کمک این کتاب، نمای کلی فرآیند توسعه نرم افزار را درک خواهید کرد. ما هر روز از نرم افزار استفاده می‌کنیم؛ سیستم عامل ها، برنامه‌های کاربردی، برنامه‌های ویرایش اسناد، بانکداری خانگی، اما آیا تا به حال فکر کرده اید که چه کسی نرم افزار را ایجاد می‌کند و چگونه ایجاد می‌شود؟ این کتاب، با کمک تئوری و ابزار‌های طراحی کاربر محور، شما را در کل فرآیند، از تصور تا محصول نهایی راهنمایی می‌کند.
کتاب Software Development: From A to Z (توسعه نرم افزار: از A تا Z)، یک نمای کلی از توسعه Backend، از پایگاه داده گرفته تا پروتکل‌های ارتباطی از جمله مهارت‌های برنامه نویسی کاربردی در جاوا و توسعه frontend، از HTML و CSS گرفته تا رجیستری npm و چارچوب Vue.js ارائه می‌دهد. شما مهندسی تضمین کیفیت، از جمله تئوری در مورد انواع مختلف تست‌ها و تمرین تست end-to-end با استفاده از Selenium را بررسی خواهید کرد.
سپس وارد دنیای devops خواهید شد، جایی که نویسندگان کتاب در مورد یکپارچه سازی مداوم و فرآیندهای تحویل مداوم به همراه فناوری‌های مرتبط با هر موضوع بحث می‌کنند. سپس مطالب مربوط به مدیریت محصول و پروژه را بررسی خواهید کرد که در آن نویسندگان در مورد فرآیندهای چابک، اسکرام و سایر فرآیندها از تجربه خود صحبت می‌کنند.
موضوعاتی که تحت پوشش قرار می‌گیرند به طور کلی نیاز به دانش عمیقی از فناوری ندارند. هر کسی که دانش اولیه کامپیوتر و برنامه نویسی را داشته باشد، می‌تواند تمام کار‌ها را تکمیل کند و مفاهیمی را که هدف این کتاب ارائه دادن آن هاست را به طور کامل درک کند. شما کلاه مدیر پروژه، صاحب محصول، طراح، بک اند، فرانت اند، QA و مهندس devops را بر سر می‌گذارید و نقش مورد علاقه خود را پیدا می‌کنید.

 

تعداد بازدید: ۲۶۵۱
دیدگاه ها: ۰
تاریخ: 1401/02/03 12:10
توسط: MotoMan
امتیاز: ۱
برچسب ها: Coding |software engineering |

کارایی کد در برابر سادگی؛ سرعت تحویل در برابر تکرار؛ انعطاف پذیری در برابر قابلیت نگهداری. هر تصمیمی که در مهندسی نرم‌افزار می‌گیرید، مستلزم سبک و سنگین کردن است. در کتاب Software Mistakes and Tradeoffs (اشتباهات نرم افزاری و سبک و سنگین کردن ها)، از اشتباهات پرهزینه ای که توماس للک و جان اسکیت در طول مشاغل حرفه ایشان با آنها مواجه شده اند، یاد خواهید گرفت. هر گامی در یک پروژه نرم افزاری مستلزم سبک و سنگین کردن است. وقتی سرعت، امنیت، هزینه، زمان تحویل، قابلیت‌ها و موارد دیگر را سبک و سنگین می‌کنید، انتخاب‌های معقول طراحی ممکن است در هنگام عملیاتی شدن مشکل‌ساز باشند. شما سناریوهای دنیای واقعی را بررسی خواهید کرد که در آن درک ضعیفی از سبک و سنگین کردن‌ها منجر به مشکلات بزرگی می‌شود، بنابراین می‌توانید با رویکردی متفکرانه‌تر در تصمیم گیری، از اشتباهات خود جلوگیری کنید.
بیاموزید که چگونه تکرار کد بر جفت شدگی (coupling) و سرعت تکامل سیستم‌های شما تأثیر می‌گذارند و چگونه نیازمندی‌های ساده می‌توانند تفاوت‌های ظریف پنهانی با توجه به اطلاعات تاریخ و زمان داشته باشند. کشف کنید که چگونه به طور موثری دامنه بهینه سازی خود را طبق اصول پارتو 80/20 محدود کنید و از ثبات در سیستم‌های توزیع شده خود اطمینان حاصل کنید. شما خیلی زود دانشی کسب خواهید کرد که فقط از سالها تجربه ناشی می‌شود.

 

 
تعداد بازدید: ۳۱۳۷
دیدگاه ها: ۰
تاریخ: 1400/11/06 19:45
توسط: MotoMan
امتیاز: ۰
برچسب ها: Coding |

کتاب The Passionate Programmer (برنامه نویس پرشور)، درباره دستیابی به یک شغل قابل توجه در توسعه نرم افزار است. در بیشتر موارد، شغل‌های قابل توجه، شانسی به دست نمی‌آیند. آنها به فکر، قصد، عمل و تمایل به تغییر مسیر نیاز دارند. بسیاری از ما به این فکر افتاده‌ایم که اجازه دهیم شغل‌هایمان ما را به هر جایی که می‌خواهند ببرند. وقت آن است که کنترل را به دست بگیرید. این کتاب، اصلاح و به روز شده تا یک استراتژی برای برنامه ریزی و ایجاد یک زندگی کاملاً موفق در توسعه نرم افزار را ارائه دهد.

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

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

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

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

 
تعداد بازدید: ۲۲۹۰
دیدگاه ها: ۰
تاریخ: 1400/09/05 10:15
توسط: MotoMan
امتیاز: ۰
برچسب ها: Coding |

لینوس توروالدز، خالق لینوکس می‌گوید «اکثر برنامه نویسان خوب، برنامه نویسی می‌کنند نه به این دلیل که انتظار دارند دستمزد دریافت کنند یا مردم آن‌ها را تحسین کنند، بلکه به این دلیل که برنامه نویسی سرگرم کننده است.»

من در رشته علوم سیاسی در دانشگاه کلمسون تحصیل کردم. قبل از اینکه این مسیر را انتخاب کنم، علوم کامپیوتر را در نظر داشتم. من حتی سال اول در یک کلاس «مقدمه ای بر برنامه نویسی» ثبت نام کردم، اما به سرعت آن را رها کردم؛ خیلی سخت بود. در حالی که پس از فارغ التحصیلی در Silicon Valley زندگی می‌کردم، به این نتیجه رسیدم که باید برنامه نویسی را یاد بگیرم.

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

کتاب The Self-taught Programmer (برنامه نویس خودآموخته)، فقط در مورد یادگیری برنامه نویسی نیست؛ اگرچه کدنویسی را یاد خواهید گرفت. این کتاب در مورد همه چیزهای دیگری است که برای برنامه نویسی حرفه ای باید بدانید که کلاس‌ها و کتاب‌ها به شما آموزش نمی‌دهند. این یک نقشه راه است، راهنمایی که شما را از نوشتن اولین برنامه تا گذراندن اولین مصاحبه فنی خود هدایت می‌کند.

تعداد بازدید: ۳۱۲۴
دیدگاه ها: ۱
تاریخ: 1400/07/29 23:42
توسط: MotoMan
امتیاز: ۱
برچسب ها: Coding |software engineering |

در بین تمامی مصاحبه‌های فنی، سوالات مصاحبه‌های طراحی سیستم، سخت‌ترین هستند. این سوالات، از مصاحبه شونده‌ها می‌خواهند تا یک معماری را برای یک سیستم نرم افزاری که می‌تواند یک فید خبری، جستجوی گوگل، سیستم چت و غیره باشد، طراحی کنند. این سوالات ترسناک هستند و هیچ الگوی خاصی برای پیروی از آن وجود ندارد. این سوالات، معمولاً دارای گستره بزرگ و مبهم هستند؛ و فرآیند‌ها بی انتها، نامفهوم و بدون یک پاسخ استاندارد یا صحیح هستند.
شرکت‌ها به طور گسترده ای از مصاحبه‌های طراحی سیستم استفاده می‌کنند؛ زیرا مهارت‌های ارتباطی و حل مسئله ای که در این مصاحبه‌ها آزمایش می‌شوند مشابه مهارت‌های مورد نیاز کار روزمره یک مهندس نرم افزار است. مصاحبه شونده بر اساس چگونگی تجزیه و تحلیل یک مسئله مبهم و نحوه حل گام به گام مسئله ارزیابی می‌شود. توانایی‌های مورد آزمایش همچنین شامل نحوه‌ی توضیح ایده، بحث با دیگران و ارزیابی و بهینه سازی سیستم است.
سوالات طراحی سیستم بی انتها هستند. درست مانند دنیای واقعی، تفاوت‌ها و تغییرات زیادی در سیستم وجود دارد. نتیجه مطلوب، ارائه معماری برای دستیابی به اهداف طراحی سیستم است. بسته به مصاحبه کننده، بحث‌ها می‌توانند به روش‌های مختلفی پیش بروند. برخی مصاحبه کنندگان ممکن است معماری سطح بالا را برای پوشش همه جنبه‌ها انتخاب کنند؛ در حالی که برخی ممکن است یک یا چند حوزه را برای تمرکز انتخاب کنند. به طور معمول، نیازمندی‌های سیستم، محدودیت‌ها و گلوگاه‌ها باید به خوبی درک شوند تا جهت مصاحبه کننده و مصاحبه شونده را شکل دهند.
هدف کتاب System Design Interview – An insider's guide, Second Edition (مصاحبه طراحی سیستم – راهنمای خودی، ویرایش دوم)، ارائه یک استراتژی قابل اعتماد برای رویارویی با سوالات مصاحبه طراحی سیستم است. استراتژی و دانش مناسب، برای موفقیت در یک مصاحبه حیاتی است. این کتاب، دانش کاملی در زمینه ایجاد یک سیستم مقیاس پذیر ارائه می‌دهد. هرچه دانش بیشتری از خواندن این کتاب کسب شود، در حل سوالات طراحی سیستم مجهزتر خواهید بود. این کتاب همچنین چارچوبی گام به گام در مورد نحوه برخورد با سوالات طراحی سیستم ارائه می‌دهد. همچنین مثال‌های زیادی را برای نشان دادن رویکرد سیستماتیک با مراحل دقیق که می‌توانید دنبال کنید ارائه می‌دهد. با تمرین مداوم، برای از عهده بر آمدن پرسش‌های مصاحبه طراحی سیستم، به خوبی مجهز خواهید بود.

 

تعداد بازدید: ۸۹۷۸
دیدگاه ها: ۳
تاریخ: 1400/05/01 19:15
توسط: MotoMan
امتیاز: ۲
برچسب ها: Coding |

در کتاب Clean Craftsmanship: Disciplines, Standards, and Ethics (صنعت گری تمیز: نظم و انضباط، استاندارد‌ها و اصول اخلاقی)، Robert C. Martin (عمو باب) افسانه ای، راهنمای قطعی هر برنامه نویسی برای خوب کار کردن را نوشته است. مارتین مقررات، استانداردها و اصول اخلاقی مورد نیاز شما را برای ارائه‌ی سریع و کارآمد کدهای قوی و موثر گرد هم آورده است تا به تمامی نرم افزارهایی که می‌نویسید هر روز افتخار کنید.
مارتین، نویسنده کتاب پر فروش The Clean Coder، با یک راهنمای عملی، فنی و تجویزی برای پنج دستور العمل بنیادی از ساخت نرم افزار شروع می‌کند: توسعه آزمون محور، ریفکتور کردن، طراحی ساده، برنامه نویسی مشارکتی (جفت شدن) و آزمون‌های پذیرش. سپس به سراغ استاندارد‌ها می‌رود و انتظارات اساسی که جهان از توسعه دهندگان نرم افزار دارد را ترسیم می‌کند و اینکه چگونه این انتظارات اغلب از منظر خودشان متفاوت هستند را روشن می‌کند و به شما در اصلاح این عدم تطابق کمک می‌کند. سرانجام، او به اخلاق حرفه برنامه نویسی می‌پردازد و ده قول اساسی را که همه توسعه دهندگان نرم افزار باید به همکاران خود، کاربران و بیش از همه به خودشان بدهند را توصیف می‌کند.
با راهنمایی‌ها و مشاوره‌های مارتین، همواره می‌توانید کدی را بنویسید که اعتماد ایجاد کند تا اینکه آن را تضعیف کند و در میان کاربران و کل جامعه ای که برای بقای خود به نرم افزار وابسته هستند اعتماد ایجاد کنید.

 

تعداد بازدید: ۵۰۰۸
دیدگاه ها: ۱
تاریخ: 1400/04/18 12:59
توسط: MotoMan
امتیاز: ۲

هیچ چیزی به اندازه‌ی کدهای بد، ناخوانا، شلخته و سریع نوشته شده که با دقت طراحی نشده اند، روی کار یک تیم تأثیر نمی‌گذارد. پویایی تیم می‌تواند بهبود یابد، نیازمندی‌ها دوباره تعریف شوند و زمان بندی می‌تواند اصلاح شود؛ اما، اگر کد بد کنترل کار را در دست بگیرد، سنگینی آن برای تیم بیشتر و بیشتر می‌شود. برنامه نویسان باید همیشه توسعه دهند. حتی اگر آن‌ها فکر می‌کنند که مهارت و دانش کافی برای حرکت در پروژه‌های فعلی را دارند، نباید در آنجا متوقف شوند و شایسته است که آنها هر از گاهی مفاهیم، رویکردها، زبان‌ها و چارچوب‌های جدیدی را بیاموزند. یادگیری باید یک سفر باشد و نه یک مقصد.
برای تبدیل شدن به یک توسعه دهنده‌ی بهتر نرم افزار، به دانش و مهارت‌های عملی عمیقی در زمینه‌ی توسعه و کیفیت نرم افزار نیاز دارید. این کتاب، برای تحلیل و بهبود کد‌های نرم افزار شما، بحث‌های مفصلی و بررسی‌های اجمالی زیادی را ارائه می‌دهد. شما قادر خواهید بود تا از اصول، الگوها، تکنیک‌ها و ابزارهای مورد نیاز برای نوشتن کد تمیز استفاده کنید.
کتاب Clean Code Fundamentals (مبانی کد تمیز)، مبانی کیفیت نرم افزار، اصول، الگوها و بهترین شیوه‌های نوشتن کد بهتر را بیان می‌کند. این کتاب همچنین شامل مثال‌های بسیاری با کد جاوا و با پیچیدگی از کم به زیاد است. همچنین موارد دیگری مانند معیارهای نرم افزار، تست نرم افزار استاتیک و ابزارهایی که می‌توانند به اندازه گیری کیفیت نرم افزار کمک کنند، پوشش داده خواهند شد.

 

تعداد بازدید: ۷۴۸۸
دیدگاه ها: ۰
تاریخ: 1399/08/09 00:01
توسط: MotoMan
امتیاز: ۰
برچسب ها: Coding |

کتاب Business Process Management Systems، تقریباً تمامی جنبه‌های حوزه‌ی BPMS را در بر می‌گیرد و تعاریف و خلاصه ای از مفاهیم مختلف BPM، شیوه‌های بهبود کسب و کار، فناوری‌های یکپارچه سازی داده ها، فناوری‌های یکپارچه سازی برنامه ها، فناوری‌های گردش کار، محصولات BPMS و استانداردهای BPMS را ارائه می‌دهد. این کتاب برای کسانی که به BPMS علاقه مند هستند و با یکپارچه کردن داده ها، سیستم‌ها و افراد درگیر هستند، منبع خوبی است.

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

تعداد بازدید: ۲۶۳۰
دیدگاه ها: ۰
تاریخ: 1399/07/25 14:27
توسط: MotoMan
امتیاز: ۰
برچسب ها: Coding |software engineering |

مستندات نرم افزار می‌توانند جان بگیرند، پویا بمانند و در حقیقت به شما در ساختن نرم افزار بهتر کمک کنند. کتاب Living Documentation، برای توسعه دهندگان، معماران و سایر متخصصین نرم افزار نوشته شده است تا نحوه‌ی ایجاد مستنداتی را نشان دهد که در کل چرخه توسعه و طراحی شما تکامل می‌یابند. این کتاب از روشی که از طراحی دامنه محور (Domain Driven Design) الهام گرفته شده است برای ساختن مستنداتی استفاده می‌کند که تکامل پیدا می‌کنند تا در طول چرخه توسعه ارزش را به حداکثر برسانند.

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

تعداد بازدید: ۲۴۸۹
دیدگاه ها: ۰
تاریخ: 1399/07/02 22:16
توسط: MotoMan
امتیاز: ۰
برچسب ها: Coding |software engineering |

تعداد کمی کتاب در رشته کامپیوتر به اندازه کتاب Peopleware در مدیریت نرم افزار تأثیری عمیق داشته اند. دید منحصر به فرد این کتاب پرفروش قدیمی این است که عمده مسائل مربوط به توسعه نرم افزار، انسانی است و نه فنی. آنها مسائل ساده ای نیستند؛ اما آنها را حل کنید و شانس موفقیت خود را به حداکثر برساند.

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

تعداد بازدید: ۲۷۸۱
دیدگاه ها: ۱
تاریخ: 1399/07/01 22:41
توسط: MotoMan
امتیاز: ۲

تا حالا شده که زمان زیادی را برای کد نویسی یک الگوریتم اشتباه هدر داده باشید؟ از ساختمان داده ای استفاده کنید که بسیار پیچیده باشد؟ برنامه ای را تست کرده باشید اما یک مشکل واضح را از قلم انداخته باشید؟ یک روز را صرف جستجوی باگی کرده باشید که باید در عرض پنج دقیقه آن را پیدا می‌کردید؟ لازم است که برنامه سه برابر سریعتر اجرا شود و از حافظه‌ی کمتری استفاده کند؟ تلاش کرده اید که برنامه ای را از یک workstation به یک PC منتقل کنید یا بالعکس؟ سعی کرده اید تغییر ناچیزی در برنامه شخص دیگری ایجاد کنید؟ دوباره برنامه ای را باز نویسی کرده اید زیرا نمی‌توانستید آن را درک کنید؟

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

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

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

تعداد بازدید: ۲۷۹۱
دیدگاه ها: ۰
loading...

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