Re: [Sunuml-developers] Language
Status: Planning
Brought to you by:
lazaruslong
From: Steven G. <laz...@gm...> - 2008-10-09 03:27:14
|
Hey, Those in favor of C++ should speak up or Python will win by default! Although I think we speak to much about the language and not about howt to organise the work (specs, requirements, ...) I will add some comments. 1. Language and tools > As for IDE for Python as I found out that Eclipse + PyDev make a good IDE. I will be blunt: I don't care... what you use for tools! The project code & folder should be organised in a way that any one of us can use the tools he likes and is proficient with. Period. Check my other open-source project OGE. After lots of thinking we came up with a folder structure for our cross-platform plugin-based c++ project which permits anyone to use the ide/c++ compiler he wants. http://www.opengameengine.org/wiki/index.php?title=Project_Structure You will see that we have a */build/* folder for each project (sub libraries, plugins, etc). In it you can put the files you need for your ide/compiler like vc80, vc90, cmake or whatever. Even autotools can be used without littering the project structure with numerous makefiles. (The first task of the bootstrap is simply to copy in the folder the needed makefiles hence the people *not* using autotools are not disturbed by files they don't use). The only constraint is that the folders names & filenames don't contain spaces and are case-insensitive unique (preferably lowercase for the folder names). This makes it very easy to setup projects. We must use such an approach. Of course this means that only the MINIMAL ide/compiler files must be committed to enable several people to work with them (i.e for vc80 only .vcproj & .sln no .suo, .ncb, .user) Personally I will try not to use the too big eclipse. I will try to use CodeBlocks and its experimental python plugin<http://developer.berlios.de/projects/cbilplugin/>(cbilplugin): compile, debugger. And even if there is no auto-complete yet (planned for soon) I wouldn't mind supporting it. If it is too hard/buggy I will revert to your eclipse files :) 2. SunUML features > As It is a fork of the existing project I beleive we must remain > compatible, i.e. existing .uml files must be readable/converted. > I think our first goal should be to build a functional equivalent of > StarUML, but not a port of StarUML :) BTW, has anyone looked at http://www.evolus.vn/Pencil/Home.html - it is an > interesting tool for building diagrams/prototyping UI etc. > It is Gecko based - runs in Mozilla Firefox or standalone. We should begin with some UI prototyping so we can discuss how much we replicate the StarUML UI. Perhaps someone can make screenshots of all StarUML windows and put them on wiki so we can discuss them. The second goal is to build a superior product - here team support comes as > an example. > We should have an N-tier architecture from the start. This would enable us to have permissions & roles later without a major rework. The first version should be an application with its data tier loading/saving from files. T1 : Application <-> T3 : Business/Application Logic <-> T4 Data Access <-> T5 :Data Storage (files or database) Later we can implement the T2 : IIS Internet Layer and expend the T5 to use a database. Implementing T1 as a browser interface will be a late exercice. It is the T3 layer I am unsure of. IMO it should be broken in two: - User Layer : User rights & roles. Controling access to the Data Layer methods - Data Layer : Data manipulation, business logic, ... The first version would have a unique role which can access all methods of the data layer. This would make a 6-Tier architecture :D What do you think? Regards, Steven |