We don’t allow questions seeking recommendations for software libraries, tutorials, tools, books, or other off-site resources. You can edit the question so it can be answered with facts and citations.
Closed 4 years ago.
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(2)
您需要规划如何使您的 UI 跨平台兼容。截至撰写本文时,在 HTML/JS 中执行一次写入接口相当困难。尽管兼容性状态越来越好,但我计划非常小心地将 UI 与业务逻辑分开,因为我认为您可能需要为每个设备部署单独版本的 UI,或者拥有统一但非常简化的 UI ,可在多种设备上运行的 UI(假设是 Web 应用程序)。
计划对您的业务代码进行单元测试,以确保其适用于您的所有设备。 JS 引擎有所不同,您需要在开发过程的早期就了解这一点。
提前计划如何处理用户输入。例如,如果您的用户有物理键盘,他们就会期望使用它。您可能希望针对使用轨迹球的黑莓网站和使用手指点击的 iPhone 或 Storm 的网站采用截然不同的布局。
提前了解您的目标平台,然后购买这些手机。如果值得做,就值得购买这款手机。举个例子,我的第一个 iPhone 应用程序与数据库进行通信。它在模拟器上运行良好,但我正在等待我的开发人员密钥,然后才能在设备上进行测试。一旦使用设备,我发现我认为的 1/2 秒延迟更像是 40 秒延迟,这迫使我彻底修改项目。
希望这有帮助。
Code Repository: Add Mercurial - Its the only free, distributed version control system that easily runs on windows, mac, linux, etc. SVN will be the only one of those that has a friendly interface.
You'll need to plan for how to make your UI cross platform compatible. As of this writing, its quite difficult to perform a write-once interface in HTML/JS. Although state-of-compatibility is getting better, I would plan to very carefully separate your UI from your business logic because I think you'll likely need to either deploy separate versions of the UI for each device or to have unified, but very simplified, UI that works on many devices (assuming a web app).
Plan on unit test your business code to make sure it works on all of your devices. The JS engines differ, and you need to know that early in your dev process.
Plan ahead as to how to handle user input. If your users have a physical keypad, for example, they'll expect to use it. You may want a very different layout for a site targeting Blackberries with trackballs, then an iPhone or Storm that uses finger taps.
Know ahead of time which platforms you will target, and then buy those phones. If its worth doing, its worth buying the phone. As an example, my first iPhone app talked to the database. It worked fine on the simulator but I was waiting for my developer key before I could test on the device. Once on the device, I discovered that what I thought would be a 1/2 second delay was more like a 40 second delay, which forced me to totally revamp the project.
Hope this helps.
IDE - 我认为 Eclipse(Aptana 是 Eclipse 的自定义版本)是跨平台和跨语言 IDE 的不错选择。您还可以查看 NetBeans。
数据库 GUI - 我自己没有使用过很多 DB Visualizer,所以我将放弃那个。
源代码控制 - 即使您的开发人员以前没有使用过 GIT,我也会使用它。他们很快就会喜欢上它,并且客户端工具在过去一年左右的时间里有了很大的改进。查看适用于 Windows 的 Git 扩展和适用于 Mac 的 GitX。
Web 框架 - 这应该基于您团队的经验和项目的要求。我会选择您的团队感觉最舒服的任何内容。就我个人而言,我是 Ruby on Rails 和 ASP.Net MVC 的粉丝,但 Asp.Net MVC 是微软平台,而且看起来你想保持开源。
开发方法论 - 无论您的团队觉得舒服什么。我想说研究一下敏捷和 TDD(测试驱动开发)
工作流程文档 - 不确定这个
浏览器集 - 全部使用它们。在尽可能多的地方测试您的应用程序。为了测试多个版本的 IE,我使用 IETester。 Safari 和 Firefox 的一些扩展允许您更改浏览器的用户代理,这可能很有用。
IDE - I think Eclipse (Aptana is a custom version of Eclipse) is a good choice for a cross platform and cross-language IDE. You could also look into NetBeans.
Database GUI - I haven't used many DB Visualizer's myself, so I'll pass on that one.
Source Control - I would go with GIT even if your developers haven't used it before. They will learn to like it quickly and the client tools have improved considerably in the last year or so. Check out Git Extensions for Windows and GitX for Mac.
Web Framework - This should be based on your team's experience and the requirements of your project. I would pick whatever your team feels the most comfortable with. Personally, I'm a fan of Ruby on Rails and ASP.Net MVC, but Asp.Net MVC is microsoft platform, and it seems like you want to stay open source.
Dev Methodology - Whatever your team feels comfortable with. I would say look into Agile and TDD (test driven development)
Workflow Documentation - Not sure about this one
Browser Set - Use them all. Test your applications in as many places as possible. For testing multiple versions of IE, I use IETester. Safari and some extensions for Firefox allow you to change your browser's user agent, which can be useful.