【问题标题】:Should i write in C# first then port to web?我应该先用 C# 编写然后移植到 Web 吗?
【发布时间】:2009-05-04 22:49:30
【问题描述】:

我想写一个网站,但我几乎不懂网络编程。我查看了 ASP.NET,我想知道。我是否应该使用带有表单和许多按钮来测试每个页面/组件的直接 C# 编写我的应用程序?然后移植或有人帮我移植?还是我应该从一开始就直接从 ASP.NET 开始?

-edit- 我在前 6 个答案之后编辑了以下内容,因此它们可能看起来很奇怪

我想如果我只使用 C# 和 sqlite 可以完成更多工作,因为我可以更快地编写废品和测试代码并更快地制作原型。 ASP.NET 将花费大量时间来处理简单的基本事情。

注意:我不会进行繁重的表单编码。只需简单的 IO 即可从数据库中放置和提取数据。

【问题讨论】:

    标签: c# asp.net prototype


    【解决方案1】:

    从 asp.net 开始。

    WinForms 和 WebForms 不能很好地翻译。特别是如果你正在学习 asp.net


    考虑到您对问题的更新,这仍然是正确的方法。 WinForms != WebForms != MVC 或其他任何东西。了解一个人并不意味着了解另一个人。

    【讨论】:

      【解决方案2】:

      如果您不了解 Web 编程,那么您使用 C# 进行的任何操作都无法很好地移植到 ASP.NET。你需要先了解网络。


      即使给出了您的评论,我的建议仍然有效。首先学习网络编程。如果您愿意,可以先创建一个单独的 DAL 和业务逻辑层;您甚至可以使用测试驱动开发来创建那些。但在接触 UI 之前,您需要了解 Web 是关于什么的,否则您会犯一些您会后悔的错误。

      【讨论】:

        【解决方案3】:

        执行此操作的正确方法是在 C# 中创建一个组件(库)来处理所有数据库工作(读取和存储数据以及验证该数据)。您可以在此基础上构建一个 winform 以确保您的库正常工作。

        完成后,从您的 ASP.NET 页面使用该库,您无需担心已经测试过的低级逻辑。

        不要尝试将您的 winform 代码移植到网络上,因为这不会很好地工作。

        【讨论】:

          【解决方案4】:

          如果这是您第一次使用 C#,您甚至可能更适合通过将代码层与表示层完全分离来开始。我开始在 web 和 win forms 应用程序中使用 UI,而不是学习优秀的编码实践和代码分离。如果您是从头开始,您可以先学习代码分离,而不必担心 UI 会做什么。

          简而言之,两者都不是。从数据库和自定义数据类之间的良好代码分离开始,然后从那里开始。


          这绝不是要完美说明如何进行良好的代码分离,而更多的是一个项目符号列表,说明了如何开始。您可能想搜索依赖注入、存储库模式等,以获得更多最佳实践视图...

          例如,假设您要创建一个联系人管理器应用程序。您知道您将拥有用于插入、更新和删除的代码以及一些搜索和一般联系人列表。
          1. 我将首先使用您知道自己想要的所有字段创建您的数据库。
          2. 然后我会在数据库中添加一些虚拟数据。
          3. 现在我将在我的应用程序中创建数据层。最好这是一个单独的项目,全部编译成一个简单的 DLL。
          4. 现在您已经构建了用于存储联系信息的数据类,是时候创建实际用于获取数据的层了。转到您的解决方案并添加一个将编译为 DLL 的新项目。
          5. 确保数据库可用于您的代码。
            一个。 LINQ2SQL
            乙。企业库
          6. 创建用于添加、编辑和删除联系人的函数。该参数很可能是您在 #3 中创建的联系人对象。
          7. 创建用于搜索和返回联系人列表的函数。这应该返回一个在 #3 中创建的 List 或类似的东西......
          8. 通过在您的 UI 项目中引用这两个 DLL 来添加任何 UI 层(可以是控制台、Web、win...)

          【讨论】:

            【解决方案5】:

            编写所有后端代码,并使用单元测试框架,以确保其正常工作。

            除了显示代码之外的所有内容都完成后,您可以查看显示,然后选择您想要使用的技术。

            【讨论】:

              【解决方案6】:

              我会说直接写到 ASP.NET。如果您已经了解 WinForms 上的 C#,我认为学习曲线对您来说不会那么糟糕,而且 ASP.NET 中的数据绑定模型在很多方面都不同,我认为您只需编写一次就会受益。

              【讨论】:

                【解决方案7】:

                如果您打算作为一名真正的程序员尝试它并且打算创建一个网站,请在跳入 C# 之前学习 html 和 css。网络上有很多很棒的免费资源。

                学习 html 和 css,然后尝试使用 Asp.Net MVC 来轻松地进行动态 Web 开发。

                【讨论】:

                  【解决方案8】:

                  正如其他人所说,首先从 asp.net 开始。我建议首先编写一个小测试应用程序,它可以在小空间中完成您需要大型应用程序执行的操作。

                  winforms 和 asp.net 页面之间的差异有一些绊脚石。所以以上内容应该可以帮助您克服其中的一些问题。

                  【讨论】:

                    猜你喜欢
                    • 1970-01-01
                    • 2018-05-10
                    • 1970-01-01
                    • 2011-05-02
                    • 1970-01-01
                    • 1970-01-01
                    • 1970-01-01
                    • 1970-01-01
                    • 2021-09-21
                    相关资源
                    最近更新 更多