| 01. Introducing Refactoring | |||
| 01. Introduction.wmv | 3.21 MB | ||
| 02. What is Refactoring .wmv | 6.85 MB | ||
| 03. Why Should You Refactor .wmv | 2.48 MB | ||
| 04. Technical Debt.wmv | 2.88 MB | ||
| 05. When Should You Refactor.wmv | 7.46 MB | ||
| 06. Refactoring Principles.wmv | 2.83 MB | ||
| 07. The Refactoring Process.wmv | 2.79 MB | ||
| 08. Demo Characterization Tests.wmv | 5.6 MB | ||
| 09. Refactoring Tips.wmv | 1.66 MB | ||
| 10. Refactoring Tools.wmv | 2.83 MB | ||
| 11. Premature Optimization.wmv | 1.57 MB | ||
| 12. Refactoring and Tests.wmv | 1.68 MB | ||
| 13. Demo A Simple Refactoring.wmv | 4.63 MB | ||
| 14. Summary.wmv | 2.17 MB | ||
| 02. Bloating Code Smells | |||
| 01. Introduction.wmv | 1.21 MB | ||
| 02. Code Smells.wmv | 2.98 MB | ||
| 03. Principle of Least Surprise.wmv | 2.15 MB | ||
| 04. Organizing Code Smells.wmv | 1.18 MB | ||
| 05. The Bloaters.wmv | 1.33 MB | ||
| 06. Long Method.wmv | 5.98 MB | ||
| 07. Long Method Examples.wmv | 57.66 MB | ||
| 08. Primitive Obsession.wmv | 8.7 MB | ||
| 09. Long Parameter List.wmv | 12.85 MB | ||
| 10. Data Clumps.wmv | 3.56 MB | ||
| 11. Combinatorial Explosion.wmv | 5.05 MB | ||
| 12. Oddball Solution.wmv | 1.2 MB | ||
| 13. Class Doesn't Do Much.wmv | 803.55 KB | ||
| 14. Required Setup Teardown Code.wmv | 1.28 MB | ||
| 15. Summary.wmv | 1.28 MB | ||
| 03. Obfuscating Code Smells | |||
| 01. Introduction.wmv | 1.68 MB | ||
| 02. The Obfuscators.wmv | 1020.6 KB | ||
| 03. Regions.wmv | 7.7 MB | ||
| 04. Comments.wmv | 18.21 MB | ||
| 05. Poor Names.wmv | 19.72 MB | ||
| 06. Vertical Separation.wmv | 1.64 MB | ||
| 07. Inconsistency.wmv | 815.21 KB | ||
| 08. Obscured Intent.wmv | 2.39 MB | ||
| 09. Summary.wmv | 1.69 MB | ||
| 04. Object Orientation Abuser Code Smells | |||
| 01. Introduction.wmv | 1.29 MB | ||
| 02. Switch Statements.wmv | 10.23 MB | ||
| 03. Temporary Field.wmv | 6.43 MB | ||
| 04. Alternative Classes with Different Interfaces.wmv | 2.4 MB | ||
| 05. Class Depends on Subclass.wmv | 7.53 MB | ||
| 06. Inappropriate Static.wmv | 1.43 MB | ||
| 07. Summary.wmv | 2.49 MB | ||
| 05. Code Smells Change Preventer | |||
| 01. Introduction.wmv | 1.14 MB | ||
| 02. Change Preventers.wmv | 1.62 MB | ||
| 03. Divergent Change.wmv | 1.32 MB | ||
| 04. Shotgun Surgery.wmv | 2.12 MB | ||
| 05. Parallel Inheritance Hierarchies.wmv | 3.13 MB | ||
| 06. Inconsistent Abstraction Levels.wmv | 2.97 MB | ||
| 07. Conditional Complexity.wmv | 10.7 MB | ||
| 08. Poorly Written Tests.wmv | 1.5 MB | ||
| 09. Summary.wmv | 1.46 MB | ||
| 06. Code Smells Dispensables | |||
| 01. Introduction.wmv | 753.69 KB | ||
| 02. The Dispensables.wmv | 630.44 KB | ||
| 03. Lazy Class.wmv | 1.72 MB | ||
| 04. Data Class.wmv | 5.09 MB | ||
| 05. Duplicate Code.wmv | 3.15 MB | ||
| 06. Dead Code.wmv | 2.79 MB | ||
| 07. Speculative Generality.wmv | 3.57 MB | ||
| 08. Summary.wmv | 2.09 MB | ||
| 07. Code Smells The Couplers | |||
| 01. Introduction.wmv | 780.09 KB | ||
| 02. The Couplers.wmv | 1.1 MB | ||
| 03. Feature Envy.wmv | 5.01 MB | ||
| 04. Inappropriate Intimacy.wmv | 2.63 MB | ||
| 05. Law of Demeter.wmv | 5.58 MB | ||
| 06. Indecent Exposure.wmv | 1.15 MB | ||
| 07. Message Chains.wmv | 1.16 MB | ||
| 08. Middle Man.wmv | 1.26 MB | ||
| 09. Tramp Data.wmv | 812.4 KB | ||
| 10. Artificial Coupling.wmv | 997.23 KB | ||
| 11. Hidden Temporal Coupling.wmv | 3.95 MB | ||
| 12. Hidden Dependencies.wmv | 9.18 MB | ||
| 13. Summary.wmv | 2.95 MB | ||
| 08. Environment and Testing Code Smells | |||
| 01. Introduction.wmv | 980.24 KB | ||
| 02. Environment Smells.wmv | 13.81 MB | ||
| 03. Test Smells.wmv | 2.21 MB | ||
| 04. Not Enough Tests.wmv | 3.13 MB | ||
| 05. DRY vs. DAMP.wmv | 2.33 MB | ||
| 06. Fragility.wmv | 49.67 MB | ||
| 07. The Liar.wmv | 2.07 MB | ||
| 08. Excessive Setup.wmv | 1.58 MB | ||
| 09. The Giant.wmv | 1.13 MB | ||
| 10. The Mockery.wmv | 1.62 MB | ||
| 11. The Inspector.wmv | 1.11 MB | ||
| 12. Generous Leftovers.wmv | 2.17 MB | ||
| 13. The Local Hero.wmv | 1.02 MB | ||
| 14. The Nitpicker.wmv | 1.53 MB | ||
| 15. The Secret Catcher.wmv | 1.68 MB | ||
| 16. The Loudmouth.wmv | 1.57 MB | ||
| 17. The Greedy Catcher.wmv | 1.17 MB | ||
| 18. The Sequencer.wmv | 618.34 KB | ||
| 19. The Hidden Dependency.wmv | 1.88 MB | ||
| 20. The Enumerator.wmv | 1.11 MB | ||
| 21. The Stranger.wmv | 1.16 MB | ||
| 22. The OS Evangelist.wmv | 1.2 MB | ||
| 23. Success Against All Odds.wmv | 1.88 MB | ||
| 24. The Free Ride.wmv | 1.08 MB | ||
| 25. The One.wmv | 1.08 MB | ||
| 26. The Peeping Tom.wmv | 1.19 MB | ||
| 27. The Slow Poke.wmv | 1.27 MB | ||
| 28. The Contradiction.wmv | 1.68 MB | ||
| 29. Roll the Dice.wmv | 12.37 MB | ||
| 30. Hidden Tests.wmv | 2.8 MB | ||
| 31. Second Class Citizens.wmv | 1.12 MB | ||
| 32. Wait and See.wmv | 2.1 MB | ||
| 33. Inappropriate Test Group.wmv | 1.62 MB | ||
| 34. The Optimist.wmv | 892.72 KB | ||
| 35. The Sleeper.wmv | 1.7 MB | ||
| 36. The Void.wmv | 565.82 KB | ||
| 37. Summary.wmv | 1.95 MB | ||
| 09. Method Refactorings | |||
| 01. Introduction.wmv | 1.25 MB | ||
| 02. Extract Method.wmv | 3.53 MB | ||
| 03. Rename Method.wmv | 5.3 MB | ||
| 04. Demo Extract and Rename Method.wmv | 9.84 MB | ||
| 05. Inline Method.wmv | 2.8 MB | ||
| 06. Introduce Explaining Variable.wmv | 2.82 MB | ||
| 07. Inline Temp.wmv | 1.46 MB | ||
| 08. Replace Temp with Query.wmv | 2.05 MB | ||
| 09. Demo Replace Temp with Query.wmv | 4.82 MB | ||
| 10. Split Temporary Variable.wmv | 2.26 MB | ||
| 11. Parameterize Method.wmv | 1.83 MB | ||
| 12. Replace Parameter with Explicit Methods.wmv | 3.15 MB | ||
| 13. Add Parameter.wmv | 2.13 MB | ||
| 14. Remove Parameter.wmv | 6.42 MB | ||
| 15. Separate Query from Modifier.wmv | 5.41 MB | ||
| 16. Summary.wmv | 869.36 KB | ||
| 10. More Method Refactorings | |||
| 01. Introduction.wmv | 1.28 MB | ||
| 02. Preserve Whole Object.wmv | 4.43 MB | ||
| 03. Replace Parameter with Method.wmv | 2.67 MB | ||
| 04. Introduce Parameter Object.wmv | 3.8 MB | ||
| 05. Remove Setting Method.wmv | 2.19 MB | ||
| 06. Hide Method.wmv | 1.31 MB | ||
| 07. Replace Constructor with Factory Method.wmv | 3.99 MB | ||
| 08. Replace Error Code with Exception.wmv | 4.49 MB | ||
| 09. Remove Assignments to Parameters.wmv | 1.51 MB | ||
| 10. Replace Exception with Test.wmv | 3.58 MB | ||
| 11. Replace Method with Method Object.wmv | 8.95 MB | ||
| 12. Compose Method.wmv | 4.73 MB | ||
| 13. Substitute Algorithm.wmv | 3.88 MB | ||
| 14. Summary.wmv | 1.37 MB | ||
| 11. Class and Object Refactorings | |||
| 01. Introduction.wmv | 1.66 MB | ||
| 02. Encapsulate Field.wmv | 2.88 MB | ||
| 03. Encapsulate Collection.wmv | 4.66 MB | ||
| 04. Move Field.wmv | 3.47 MB | ||
| 05. Move Method.wmv | 6.99 MB | ||
| 06. Extract Class.wmv | 3.74 MB | ||
| 07. Inline Class.wmv | 2.29 MB | ||
| 08. Extract Interface.wmv | 3.17 MB | ||
| 09. Extract Subclass.wmv | 4.27 MB | ||
| 10. Extract Superclass.wmv | 8.13 MB | ||
| 11. Hide Delegate.wmv | 3.29 MB | ||
| 12. Remove Middle Man.wmv | 2.68 MB | ||
| 13. Summary.wmv | 1.15 MB | ||
| 12. Class Hierarchy Refactorings | |||
| 01. Introduction.wmv | 1.43 MB | ||
| 02. Pull Up Field.wmv | 3.28 MB | ||
| 03. Push Down Field.wmv | 2.99 MB | ||
| 04. Pull Up Method.wmv | 4.83 MB | ||
| 05. Push Down Method.wmv | 3.44 MB | ||
| 06. Collapse Hierarchy.wmv | 4.16 MB | ||
| 07. Replace Inheritance with Delegation.wmv | 5.34 MB | ||
| 08. Replace Delegation with Inheritance.wmv | 3.88 MB | ||
| 09. Replace Type Code with Class.wmv | 9.34 MB | ||
| 10. Replace Type Code with Subclasses.wmv | 5.93 MB | ||
| 11. Replace Conditional with Polymorphism.wmv | 7.67 MB | ||
| 12. Summary.wmv | 1.08 MB | ||
| 13. Pattern-Based Refactorings | |||
| 01. Introduction.wmv | 1.81 MB | ||
| 02. Encapsulate Classes with Factory.wmv | 7.35 MB | ||
| 03. Form Template Method.wmv | 11.37 MB | ||
| 04. Introduce Null Object.wmv | 10.31 MB | ||
| 05. Move Accumulation to Visitor.wmv | 19.86 MB | ||
| 06. Move Embellishment to Decorator.wmv | 14.32 MB | ||
| 07. Replace Conditional Dispatcher with Command.wmv | 14.72 MB | ||
| 08. Replace Conditional Logic with Strategy.wmv | 15.11 MB | ||
| 09. Replace State-Altering Conditionals with State.wmv | 21.75 MB | ||
| 10. Replace Type Code with State (or Strategy).wmv | 7.16 MB | ||
| 11. Unify Interfaces with Adapter.wmv | 16.76 MB | ||
| 12. Summary.wmv | 1.56 MB | ||
| 14. Gilded Rose Kata | |||
| 01. Introduction.wmv | 6.21 MB | ||
| 02. Gilded Rose Kata Setup.wmv | 6.15 MB | ||
| 03. Beginning the Kata.wmv | 10.62 MB | ||
| 04. Adding First Tests.wmv | 17.5 MB | ||
| 05. Testing Aged Brie.wmv | 8.66 MB | ||
| 06. Testing Sulfuras.wmv | 2.68 MB | ||
| 07. Testing Backstage Passes.wmv | 9.78 MB | ||
| 08. Refactoring with StoreItem.wmv | 17.84 MB | ||
| 09. Testing Individual Strategies.wmv | 15.43 MB | ||
| 10. Adding Conjured Item Support.wmv | 20.43 MB | ||
| 11. Summary.wmv | 5.53 MB | ||
| refactoring-fundamentals.zip | 23.77 MB |
Обучающие видео » Компьютерные видеоуроки и обучающие интерактивные DVD » Программирование (видеоуроки)
Refactoring Fundamentals
Год выпуска: 2013
Производитель: Pluralsight
Сайт производителя: http://pluralsight.com/
Автор: Steve Smith
Продолжительность: 8h 1m
Тип раздаваемого материала: Видеоклипы
Язык: Английский
Описание: Refactoring is a critical developer skill that helps keep code from collapsing under its own weight. Learn how to recognize "code smells" that may indicate the need for refactoring, the refactoring process, and when and how to apply specific refactorings to your code.
Рефакторинг является одним из важнейших навыков разработчик, который помогает сохранить код от коллапса под действием собственного веса. Узнайте, как признать "Код пахнет", которые могут указывать на необходимость рефакторинга, процесс рефакторинга, и, когда и как применять конкретные рефакторинга в код.
[spoiler="Содержание"]
Код: │ refactoring-fundamentals.zip
│
├───01. Introducing Refactoring
│ 01. Introduction.wmv
│ 02. What is Refactoring .wmv
│ 03. Why Should You Refactor .wmv
│ 04. Technical Debt.wmv
│ 05. When Should You Refactor.wmv
│ 06. Refactoring Principles.wmv
│ 07. The Refactoring Process.wmv
│ 08. Demo Characterization Tests.wmv
│ 09. Refactoring Tips.wmv
│ 10. Refactoring Tools.wmv
│ 11. Premature Optimization.wmv
│ 12. Refactoring and Tests.wmv
│ 13. Demo A Simple Refactoring.wmv
│ 14. Summary.wmv
│
├───02. Bloating Code Smells
│ 01. Introduction.wmv
│ 02. Code Smells.wmv
│ 03. Principle of Least Surprise.wmv
│ 04. Organizing Code Smells.wmv
│ 05. The Bloaters.wmv
│ 06. Long Method.wmv
│ 07. Long Method Examples.wmv
│ 08. Primitive Obsession.wmv
│ 09. Long Parameter List.wmv
│ 10. Data Clumps.wmv
│ 11. Combinatorial Explosion.wmv
│ 12. Oddball Solution.wmv
│ 13. Class Doesn't Do Much.wmv
│ 14. Required Setup Teardown Code.wmv
│ 15. Summary.wmv
│
├───03. Obfuscating Code Smells
│ 01. Introduction.wmv
│ 02. The Obfuscators.wmv
│ 03. Regions.wmv
│ 04. Comments.wmv
│ 05. Poor Names.wmv
│ 06. Vertical Separation.wmv
│ 07. Inconsistency.wmv
│ 08. Obscured Intent.wmv
│ 09. Summary.wmv
│
├───04. Object Orientation Abuser Code Smells
│ 01. Introduction.wmv
│ 02. Switch Statements.wmv
│ 03. Temporary Field.wmv
│ 04. Alternative Classes with Different Interfaces.wmv
│ 05. Class Depends on Subclass.wmv
│ 06. Inappropriate Static.wmv
│ 07. Summary.wmv
│
├───05. Code Smells Change Preventer
│ 01. Introduction.wmv
│ 02. Change Preventers.wmv
│ 03. Divergent Change.wmv
│ 04. Shotgun Surgery.wmv
│ 05. Parallel Inheritance Hierarchies.wmv
│ 06. Inconsistent Abstraction Levels.wmv
│ 07. Conditional Complexity.wmv
│ 08. Poorly Written Tests.wmv
│ 09. Summary.wmv
│
├───06. Code Smells Dispensables
│ 01. Introduction.wmv
│ 02. The Dispensables.wmv
│ 03. Lazy Class.wmv
│ 04. Data Class.wmv
│ 05. Duplicate Code.wmv
│ 06. Dead Code.wmv
│ 07. Speculative Generality.wmv
│ 08. Summary.wmv
│
├───07. Code Smells The Couplers
│ 01. Introduction.wmv
│ 02. The Couplers.wmv
│ 03. Feature Envy.wmv
│ 04. Inappropriate Intimacy.wmv
│ 05. Law of Demeter.wmv
│ 06. Indecent Exposure.wmv
│ 07. Message Chains.wmv
│ 08. Middle Man.wmv
│ 09. Tramp Data.wmv
│ 10. Artificial Coupling.wmv
│ 11. Hidden Temporal Coupling.wmv
│ 12. Hidden Dependencies.wmv
│ 13. Summary.wmv
│
├───08. Environment and Testing Code Smells
│ 01. Introduction.wmv
│ 02. Environment Smells.wmv
│ 03. Test Smells.wmv
│ 04. Not Enough Tests.wmv
│ 05. DRY vs. DAMP.wmv
│ 06. Fragility.wmv
│ 07. The Liar.wmv
│ 08. Excessive Setup.wmv
│ 09. The Giant.wmv
│ 10. The Mockery.wmv
│ 11. The Inspector.wmv
│ 12. Generous Leftovers.wmv
│ 13. The Local Hero.wmv
│ 14. The Nitpicker.wmv
│ 15. The Secret Catcher.wmv
│ 16. The Loudmouth.wmv
│ 17. The Greedy Catcher.wmv
│ 18. The Sequencer.wmv
│ 19. The Hidden Dependency.wmv
│ 20. The Enumerator.wmv
│ 21. The Stranger.wmv
│ 22. The OS Evangelist.wmv
│ 23. Success Against All Odds.wmv
│ 24. The Free Ride.wmv
│ 25. The One.wmv
│ 26. The Peeping Tom.wmv
│ 27. The Slow Poke.wmv
│ 28. The Contradiction.wmv
│ 29. Roll the Dice.wmv
│ 30. Hidden Tests.wmv
│ 31. Second Class Citizens.wmv
│ 32. Wait and See.wmv
│ 33. Inappropriate Test Group.wmv
│ 34. The Optimist.wmv
│ 35. The Sleeper.wmv
│ 36. The Void.wmv
│ 37. Summary.wmv
│
├───09. Method Refactorings
│ 01. Introduction.wmv
│ 02. Extract Method.wmv
│ 03. Rename Method.wmv
│ 04. Demo Extract and Rename Method.wmv
│ 05. Inline Method.wmv
│ 06. Introduce Explaining Variable.wmv
│ 07. Inline Temp.wmv
│ 08. Replace Temp with Query.wmv
│ 09. Demo Replace Temp with Query.wmv
│ 10. Split Temporary Variable.wmv
│ 11. Parameterize Method.wmv
│ 12. Replace Parameter with Explicit Methods.wmv
│ 13. Add Parameter.wmv
│ 14. Remove Parameter.wmv
│ 15. Separate Query from Modifier.wmv
│ 16. Summary.wmv
│
├───10. More Method Refactorings
│ 01. Introduction.wmv
│ 02. Preserve Whole Object.wmv
│ 03. Replace Parameter with Method.wmv
│ 04. Introduce Parameter Object.wmv
│ 05. Remove Setting Method.wmv
│ 06. Hide Method.wmv
│ 07. Replace Constructor with Factory Method.wmv
│ 08. Replace Error Code with Exception.wmv
│ 09. Remove Assignments to Parameters.wmv
│ 10. Replace Exception with Test.wmv
│ 11. Replace Method with Method Object.wmv
│ 12. Compose Method.wmv
│ 13. Substitute Algorithm.wmv
│ 14. Summary.wmv
│
├───11. Class and Object Refactorings
│ 01. Introduction.wmv
│ 02. Encapsulate Field.wmv
│ 03. Encapsulate Collection.wmv
│ 04. Move Field.wmv
│ 05. Move Method.wmv
│ 06. Extract Class.wmv
│ 07. Inline Class.wmv
│ 08. Extract Interface.wmv
│ 09. Extract Subclass.wmv
│ 10. Extract Superclass.wmv
│ 11. Hide Delegate.wmv
│ 12. Remove Middle Man.wmv
│ 13. Summary.wmv
│
├───12. Class Hierarchy Refactorings
│ 01. Introduction.wmv
│ 02. Pull Up Field.wmv
│ 03. Push Down Field.wmv
│ 04. Pull Up Method.wmv
│ 05. Push Down Method.wmv
│ 06. Collapse Hierarchy.wmv
│ 07. Replace Inheritance with Delegation.wmv
│ 08. Replace Delegation with Inheritance.wmv
│ 09. Replace Type Code with Class.wmv
│ 10. Replace Type Code with Subclasses.wmv
│ 11. Replace Conditional with Polymorphism.wmv
│ 12. Summary.wmv
│
├───13. Pattern-Based Refactorings
│ 01. Introduction.wmv
│ 02. Encapsulate Classes with Factory.wmv
│ 03. Form Template Method.wmv
│ 04. Introduce Null Object.wmv
│ 05. Move Accumulation to Visitor.wmv
│ 06. Move Embellishment to Decorator.wmv
│ 07. Replace Conditional Dispatcher with Command.wmv
│ 08. Replace Conditional Logic with Strategy.wmv
│ 09. Replace State-Altering Conditionals with State.wmv
│ 10. Replace Type Code with State (or Strategy).wmv
│ 11. Unify Interfaces with Adapter.wmv
│ 12. Summary.wmv
│
└───14. Gilded Rose Kata
01. Introduction.wmv
02. Gilded Rose Kata Setup.wmv
03. Beginning the Kata.wmv
04. Adding First Tests.wmv
05. Testing Aged Brie.wmv
06. Testing Sulfuras.wmv
07. Testing Backstage Passes.wmv
08. Refactoring with StoreItem.wmv
09. Testing Individual Strategies.wmv
10. Adding Conjured Item Support.wmv
11. Summary.wmv
[/spoiler]
Файлы примеров: присутствуют
Формат видео: WMV
[spoiler="audio\video"]
General
Complete name : C:\02. Code Smells.wmv
Format : Windows Media
File size : 2.98 MiB
Duration : 1mn 37s
Overall bit rate mode : Variable
Overall bit rate : 256 Kbps
Maximum Overall bit rate : 428 Kbps
Movie name : refactoring-fundamentals-1-13
Encoded date : UTC 2013-11-26 21:17:30.348
Video
ID : 2
Format : VC-1
Format profile : MP@HL
Codec ID : WMV3
Codec ID/Info : Windows Media Video 9
Codec ID/Hint : WMV3
Description of the codec : Windows Media Video 9
Duration : 1mn 37s
Bit rate mode : Variable
Bit rate : 76.2 Kbps
Width : 1 024 pixels
Height : 768 pixels
Display aspect ratio : 4:3
Frame rate : 15.000 fps
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Scan type : Progressive
Compression mode : Lossy
Bits/(Pixel*Frame) : 0.006
Stream size : 908 KiB (30%)
Language : English (US)
Audio
ID : 1
Format : WMA
Format version : Version 2
Codec ID : 161
Codec ID/Info : Windows Media Audio
Description of the codec : Windows Media Audio 9.2 - 128 kbps, 44 kHz, stereo (A/V) 1-pass CBR
Duration : 1mn 37s
Bit rate mode : Constant
Bit rate : 128 Kbps
Channel(s) : 2 channels
Sampling rate : 44.1 KHz
Bit depth : 16 bits
Stream size : 1.49 MiB (50%)
Language : English (US)
[/spoiler]
[spoiler="Скриншоты"]
![]()
[/spoiler]
| torrent name | size | uploader | age | seed | leech |
|---|---|---|---|---|---|
| 412.3 MB | freecoursewb | 4 months | 0 | 0 | |
| 3.8 GB | freecoursewb | 2 years | 0 | 0 | |
| 514.3 MB | freecoursewb | 2 years | 4 | 0 | |
| 326 MB | tutsnode | 3 years | 8 | 1 | |
|
Udemy - C + + Refactoring Bootcamp - Apply Modern C + + to Legacy Code Posted by
freecoursewb in Other
|
324.7 MB | freecoursewb | 3 years | 2 | 3 |
All Comments