buy

buy

  • ۰
  • ۰

آموزش مقدماتی Refactoring – بهبود کیفیت کد نویسی

آموزش مقدماتی Refactoring – بهبود کیفیت کد نویسی

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

کارهای سورس باز قابل توجهی از برنامه نویس‌های ایرانی یافت نمی‌شوند؛ عموما کارهای ارائه شده در حد یک سری مثال یا کتابخانه‌های کوچک است و در همین حد. یا گاهی هم انگشت شمار پروژه‌هایی کامل. مثل یک وب سایت یا یک برنامه نصفه نیمه دبیرخانه و امثال آن. این‌ها هم خوب است از دیدگاه به اشتراک گذاری اطلاعات، ایده‌ها و هم … یک مزیت دیگر را هم دارد و آن این است که بتوان کیفیت عمومی کد نویسی را حدس زد.
اگر کیفیت کدها رو بررسی ‌کنید به یک نتیجه‌ی کلی خواهید رسید: “عموم برنامه نویس‌های ایرانی (حداقل این‌هایی که چند عدد کار سورس باز به اشتراک گذاشته‌اند) با مفهومی به نام Refactoring هیچگونه آشنایی ندارند”. مثلا یک برنامه‌ی WinForm تهیه کرده‌اند و کل سورس برنامه همان چند عدد فرم برنامه است و هر فرم بالای 3000 سطر کد دارد. دوستان عزیز! به این می‌گویند «فاجعه‌ای به نام کدنویسی!» صاحب اول و آخر این نوع کدها خودتان هستید! شاید به همین جهت باشد که عمده‌ی پروژه‌های سورس باز پس از اینکه برنامه نویس اصلی از توسعه‌ی آن دست می‌کشد، «می‌میرند». چون کسی جرات نمی‌کند به این کدها دست بزند. مشخص نیست الان این قسمت را که تغییر دادم، کجای برنامه به هم ریخت. تستی ندارند. ساختاری را نمی‌توان از آن‌ها دریافت. منطق قسمت‌های مختلف برنامه از هم جدا نشده است. برنامه یک فرم است با چند هزار سطر کد در یک فایل! کار شما شبیه به کد اسمبلی چند هزار سطری حاصل از decompile یک برنامه که نباید باشد!
به همین جهت قصد دارم یک سری «ساده» Refactoring را در این سایت ارائه دهم. روی سادگی هم تاکید کردم، چون اگر عموم برنامه نویس‌ها با همین موارد به ظاهر ساده آشنایی داشتند، کیفیت کد نویسی بهتری را می‌شد در نتایج عمومی شده، شاهد بود.
این مورد در راستای نظر سنجی انجام شده هم هست؛ درخواست مقالات خالص سی شارپ در صدر آمار فعلی قرار دارد.

این مجموعه آموزشی (Refactoring Fundamentals) محصول PluralSight است. و دارای سطح متوسط و مدت زمان 8 ساعت و 1 دقیقه می باشد.

خلاصه سر فصل های این مجموعه:

Refactoring چیست؟
چه زمانی باید از Refactor استفاده کرد؟
اصول Refactoring
فرآیند Refactoring
نکات Refactoring
کد Setup/Teardown مورد نیاز
سوئیچ دستورات
فیلدهای موقت
کلاس های جایگزین با رابط های مختلف
تغییر Preventers
تغییر واگرا
سلسله مراتب وراثت موازی
سطوح انتزاعی متناقض
کلاس داده
کد تکراری
قانون Demeter
مخفی کردن اتصال موقت
وابستگی پنهان
مشارکت آزاد
تناقض
متدهای Refactorings
متد تغییر نام
متد استخراج
متدهای درون خطی
توضیح متغیر
درجه حرارت درون خطی
نمونه پروژه: جایگزینی موقت با پرس و جو
تقسیم موقت متغیر
متد پارامترها
اضافه کردن پارامتر
حذف پارامتر
معرفی پارامتر شی
متد پنهان سازی
جایگزینی کد خطا با استثنا
متد Compose
الگوریتم Substitute
حرکت فیلد
کلاس Extract
رابط Extract
کلاس سلسله مراتبی Refactorings
روش قالب فرم
معرفی شی Null
یکی کردن واسط با آداپتور
تست Sulfuras
و…

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

Introducing Refactoring
Introduction
What is Refactoring?
Why Should You Refactor?
Technical Debt
When Should You Refactor
Refactoring Principles
The Refactoring Process
Demo: Characterization Tests
Refactoring Tips
Refactoring Tools
Premature Optimization
Refactoring and Tests
Demo: A Simple Refactoring
Summary
Bloating Code Smells
Introduction
Code Smells
Principle of Least Surprise
Organizing Code Smells
The Bloaters
Long Method
Long Method Examples
Primitive Obsession
Long Parameter List
Data Clumps
Combinatorial Explosion
Oddball Solution
Class Doesn\'t Do Much
Required Setup/Teardown Code
Summary
Obfuscating Code Smells
Introduction
The Obfuscators
Regions
Comments
Poor Names
Vertical Separation
Inconsistency
Obscured Intent
Summary
Object Orientation Abuser Code Smells
Introduction
Switch Statements
Temporary Field
Alternative Classes with Different Interfaces
Class Depends on Subclass
Inappropriate Static
Summary
Code Smells: Change Preventer
Introduction
Change Preventers
Divergent Change
Shotgun Surgery
Parallel Inheritance Hierarchies
Inconsistent Abstraction Levels
Conditional Complexity
Poorly Written Tests
Summary
Code Smells: Dispensables
Introduction
The Dispensables
Lazy Class
Data Class
Duplicate Code
Dead Code
Speculative Generality
Summary
Code Smells: The Couplers
Introduction
The Couplers
Feature Envy
Inappropriate Intimacy
Law of Demeter
Indecent Exposure
Message Chains
Middle Man
Tramp Data
Artificial Coupling
Hidden Temporal Coupling
Hidden Dependencies
Summary
Environment and Testing Code Smells
Introduction
Environment Smells
Test Smells
Not Enough Tests
DRY vs. DAMP
Fragility
The Liar
Excessive Setup
The Giant
The Mockery
The Inspector
Generous Leftovers
The Local Hero
The Nitpicker
The Secret Catcher
The Loudmouth
The Greedy Catcher
The Sequencer
The Hidden Dependency
The Enumerator
The Stranger
The OS Evangelist
Success Against All Odds
The Free Ride
The One
The Peeping Tom
The Slow Poke
The Contradiction
Roll the Dice
Hidden Tests
Second Class Citizens
Wait and See
Inappropriate Test Group
The Optimist
The Sleeper
The Void
Summary
Method Refactorings
Introduction
Extract Method
Rename Method
Demo: Extract and Rename Method
Inline Method
Introduce Explaining Variable
Inline Temp
Replace Temp with Query
Demo: Replace Temp with Query
Split Temporary Variable
Parameterize Method
Replace Parameter with Explicit Methods
Add Parameter
Remove Parameter
Separate Query from Modifier
Summary
More Method Refactorings
Introduction
Preserve Whole Object
Replace Parameter with Method
Introduce Parameter Object
Remove Setting Method
Hide Method
Replace Constructor with Factory Method
Replace Error Code with Exception
Remove Assignments to Parameters
Replace Exception with Test
Replace Method with Method Object
Compose Method
Substitute Algorithm
Summary
Class and Object Refactorings
Introduction
Encapsulate Field
Encapsulate Collection
Move Field
Move Method
Extract Class
Inline Class
Extract Interface
Extract Subclass
Extract Superclass
Hide Delegate
Remove Middle Man
Summary
Class Hierarchy Refactorings
Introduction
Pull Up Field
Push Down Field
Pull Up Method
Push Down Method
Collapse Hierarchy
Replace Inheritance with Delegation
Replace Delegation with Inheritance
Replace Type Code with Class
Replace Type Code with Subclasses
Replace Conditional with Polymorphism
Summary
Pattern-Based Refactorings
Introduction
Encapsulate Classes with Factory
Form Template Method
Introduce Null Object
Move Accumulation to Visitor
Move Embellishment to Decorator
Replace Conditional Dispatcher with Command
Replace Conditional Logic with Strategy
Replace State-Altering Conditionals with State
Replace Type Code with State (or Strategy)
Unify Interfaces with Adapter
Summary
Gilded Rose Kata
Introduction
Gilded Rose Kata Setup
Beginning the Kata
Adding First Tests
Testing Aged Brie
Testing Sulfuras
Testing Backstage Passes
Refactoring with StoreItem
Testing Individual Strategies
Adding Conjured Item Support
Summary



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

قیمت : 10000 تومان



روش خرید: برای خرید "آموزش مقدماتی Refactoring – بهبود کیفیت کد نویسی" ، پس از کلیک روی دکمه زیر و تکمیل فرم سفارش، ابتدا محصول یا محصولات مورد نظرتان را درب منزل یا محل کار تحویل بگیرید، سپس وجه کالا و هزینه ارسال را به مامور پست بپردازید. جهت مشاهده فرم خرید، روی دکمه زیر کلیک کنید.


1-روی دکمه خرید پستی کلیک نمایید.
2-فرم مربوطه را به صورت کامل و صحیح پر نمایید.
3-سفارش خود را درب منزل از پستچی تحویل گرفته سپس هزینه را پرداخت نمایید.





سایر محصولات :
خرید پستی ساخت پروفایل تمام ستاره LinkedIn
خرید پستی آموزش jQuery برای مبتدیان – ساخت انیمیشن های وب سایت
خرید پستی آموزش Javascript برای مبتدیان به همراه تمرین
خرید پستی آموزش ASP.NET MVC با EF Code First
خرید پستی مقدمه ای بر برنامه نویسی PHP
خرید پستی آموزش برنامه نویسی ++C از ابتدا
خرید پستی فیلم آموزش اصول AWS Developer
خرید پستی برنامه نویسی Aspect Oriented در دات نت
خرید پستی سورس پروژه مدرسه هوشمند به زبان ASP.NET
خرید پستی اصول ASP.NET MVC
خرید پستی ساخت پوسته WordPress با Bootstrap 3
خرید پستی نحوه جذب مشتری
خرید پستی راهنمای AngularJS : دستور العمل هایی برای سناریوهای رایج
خرید پستی دوره Android Marshmallow – ساخت اپلیکیشنی با 10 میلیون دانلود
خرید پستی ساخت اپلیکیشن Android برای WordPress یا هر سایت دیگری در 5 دقیقه
خرید پستی هک های بازاریابی – 5 روش سریع
خرید پستی دوره Explore Amazon Web Services
خرید پستی کتابخانه های CSS برای طراحان وب
خرید پستی اصول داده های داینامیک ASP.NET
خرید پستی کار با داده ها در ASP.NET 3.5
خرید پستی فیلم آموزش لایسنس برای برنامه های دات نت
خرید پستی الگوریتم ها و ساختار داده ها – قسمت دوم
خرید پستی الگوریتم ها و ساختار داده ها – قسمت اول
خرید پستی Micro ORM های دات نت
خرید پستی ساختار کدهای JavaScript
خرید پستی دوره آموزش آمار قسمت چهارم – آزمایش فرضیه ,پارت1,
خرید پستی کار با Adobe Illustrator برای طراحی وب سایت
خرید پستی آموزش Git برای Visual Studio
خرید پستی آموزش مقدماتی ASP.NET Web API
خرید پستی مقدمه ای بر Localization و Globalization در دات نت
خرید پستی آموزش مقدماتی REST
خرید پستی آموزش مقدماتی Analysis Services
خرید پستی 10 ریسک امنیتی ASP.NET در OWASP
خرید پستی مفاهیم اصلی ASP.NET
خرید پستی مقدمات Integration Services
خرید پستی طراحی نرم افزارهای سرویس گرای مولتی کلاینت
خرید پستی آموزش مقدماتی Refactoring – بهبود کیفیت کد نویسی
خرید پستی آموزش AngularJS برای برنامه نویسان دات نت
خرید پستی ریاضی برای برنامه نویسان
خرید پستی CLR Threading – برنامه نویسی موازی در دات نت

آموزش جامع و کاربردی ITIL OSA - Operational Supprt Analysisآموزش استفاده از سیستم ذرات نرم افزار Fusion برای ایجاد کردن آتش ، دود ، بخار آب ، ذرات نورانی و غیرهآموزش اعمال کردن Material ها بر روی مدلهای سه بعدی در 3Ds Max به کمک V-Rayآموزش امنیت در تلفن ها و تبلت های Androidآموزش جامع Getting Started with VMware PowerCLI and Automationساخت آسان Landing Page با Drag And Drop در WordPressساخت سیستم جایزه ویدئویی در بازی های Unityآموزش کامل و کاربردی مباحث رنگی در Illustratorآموزش مقدماتی Refactoring – بهبود کیفیت کد نویسی


کلمات کلیدی :موزش مقدماتی refactoring type code with موزشی اوریجینال بوده زبان انگلیسی ساده فیلم موزشی اوریجینال نویسی موزش مقدماتی برنامه نویس‌های ایرانی موزش مقدماتی بهبود کیفیت code with مقدماتی refactoring روی دکمه type code سورس باز برنامه refactoring کیفیت نویسی بهبود مقدماتی
  • ۹۶/۰۶/۱۳
  • مجید ایرانی

نظرات (۰)

هیچ نظری هنوز ثبت نشده است

ارسال نظر

ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی