addyosmani / addyosmani/largescale-demo

Regarding structure...

オープン
#1 コメント 3 件 リアクション 0 件 担当者 0 名 GitHub で見る
主要言語
JavaScript
スター
137
フォーク
23
PR マージ指標
30日以内にマージされた PR はありません

説明

I want to mention some things related application structure because I tend to disagree on some topics.

First of all I try to figure out what I'm missing here... is there any reason why you placed facade under sandbox path?

I believe the right way should be to have 2nd facade under sandbox and main facade outside of sandbox the reason behind this is when the application is in production it will load the facade outside of sandbox when the application is in development/testing/integration env it will load the facade inside sandbox which will extend/override the facade outside sandbox. Sandbox facade will work as a temporary container for testing/development purposes once it is tested then the code could move to main facade.

Regarding libs, I believe libs folder should host application's libraries like facade, mediator etc jquery and dojo are 3rd party libs more like vendors and I believe they should be placed in vendors path instead of libs

application_core is a bit missleading, I don't really understand from first glance what exacly is the "core" there that it is "more core" than libs for example or utils, core gives higher priority on that path which is something that I believe shouldn't happen in this case. The files inside that path are more like invokers or wrappers if you want... I believe they should be part of the libs folder, same exist for utils, this too should be part of the libs folder.

currently the structure look like this:

```
application_core/
dojo-core.js
jquery-core.js
libs/
dojo.js
jquery.js
modules/
modules.js
sandbox/
facade.js
utils/
utils.js
main.js
```

The above structure really gives me the feel of "what is where, wha tis the purpose of everything here?". I would propose the following structure as more clean in my personal opinion.

```
libs/
facade.js
invoke-dojo.js
invoke-jquery.js
utils.js
modules/
modules.js
sandbox/
facade.js
vendors/
dojo.js
jquery.js
main.js
```

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

評価

この issue はまだ評価されていません。

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。