Професионална програма
Loading...
djc_bg2015 avatar djc_bg2015 922 Точки

[Homework] Static Members and Namespaces (Nov 2015) - Решения

Здравейте колеги, реших да споделя моите решения на задачите.

Както винаги, ако някой намери грешки и бъгове, ще се радвам да сподели.

Поздрави!

https://github.com/vdonchev/StaticMembersAndNamespaces-Homework

11
C# OOP Basics 19/11/2015 19:11:57
MiBuena avatar MiBuena 7 Точки

Здравейте,

при мен възникна следния въпрос по отношение на именуването на папките:

По време на лекцията Наско каза, че по конвенция папките се именуват като първо се слага името на проекта после точка и после името, което сме избрали. Така обаче, когато започнем да създаваме класове вътре в съответната папка, ако името на проекта е Game, името на папката Game.Engine, неймспейсът на съответния клас вътре се генерира като:

Game.Game.Engine. Това е пример от лекцията. Сега тук в домашната, ако следваме тази конвенция при зад. Namespaces трябва да кръстим проекта Geometry, после папките вътре Geometry.Geometry2D и така неймспейсът става Geometry.Geometry.Geometry2D.

Аз гледах разни стари изпити по ООП и тази конвенция за именуване на папките не се ползва. Примерно при проект "ArmyOfCreatures", папките са си просто Contracts, Extended и Logic, а не ArmyOfCreatures.Contracts, и т.н.

Та въпросът ми е на изпита и в реална работна обстановка ние трябва ли да прилагаме тази конвенция, когато именуваме папките си? Или просто вече е прието, че може да не се спазва?

Благодаря за разяснението.

Поздрави:

0
28/11/2015 20:22:24
RoYaL avatar RoYaL Trainer 6845 Точки

Папките се именуват Game.Engine само ако са на едно ниво с Game. Ако папата е вътре в Game, тогава я кръсти само Engine. Пример - кодът на .NET : https://github.com/dotnet/corefx/tree/master/src

0
MiBuena avatar MiBuena 7 Точки

Ами в случая Game е името на проекта.

Значи когато създаваме папка в него, трябва да е просто Engine, тъй ли?

0
RoYaL avatar RoYaL Trainer 6845 Точки

Да, ето ти пример.

Тук в папката System.Collections ( https://github.com/dotnet/corefx/tree/master/src/System.Collections/src/System/Collections ) може да видиш, че има папка която се казва само Generic. Но неймспейсът на класовете вътре е System.Collections.Generic ( https://github.com/dotnet/corefx/blob/master/src/System.Collections/src/System/Collections/Generic/LinkedList.cs )

1
MiBuena avatar MiBuena 7 Точки

А, ок. Сигурно аз не съм разбрала съвсем точно примера от лекцията.

Благодаря много!

0
28/11/2015 22:20:16