1.5.2 从简单到实用

启动新项目,开头通常不知道到结束时代码会是什么样子,在这个阶段,代码演变很迅速。但随着项目逐渐成熟,架构更加固定,我们更关心的是解决方案的可靠性,而不是灵活性。有趣的是,这些要求并不会反映在我们所使用的编程语言和工具中;而 F# 在工具和语言两方面都很好地体现这些要求,单从这点来看,F# 就有吸引力。

F# 开发过程简介

使用F# 交互式工具,用户能够在编写代码的同时立即进行验证、测试,这个工具在开发的初期非常有用,我们可以用它来尝试不同的方法,并选择最好的一个。此外,当解决一些问题时,对是否是最佳算法,没有十足把握,但可以立即进行尝试。写 F# 代码,根本不需要花很多时间进行调试。程序第一次编译并运行,就已经以交互方式测试了程序的主要部分。

早期的测试,主要是尝试用各种不同的输入执行代码,以交互方式验证代码能够运行;在后期,可将这些代码段转换成单元测试,所以,测试(testing)有着不同的含义。对于项目比较成熟的版本,我们可以使用工具,如 Visual Studio 调试器,或其他单元测试框架。

F# 作为一种语言,也反映了这一方向。着手解决任何问题,为了使开始时代码尽可能简单,只需要写一些最基本的函数式结构;随后,当找到解决问题的正确方向时,必须使代码更精致;最后,要使用更多的高级功能,使代码更可靠,更易于归档,更方便从其他 .NET 语言进行访问,如 C#。

我们现在就来看看实际的开发进程。我们将使用几个F# 构造,但不过多地关注代码,主要是看开发风格如何随着程序的进展而改变。

1.5.2 从简单到实用

时间: 2024-11-14 15:12:52

1.5.2 从简单到实用的相关文章

cad怎么转换成pdf 简单又实用

作为一名技术宅,小编永远在设计CAD图形,每次设计完CAD,都要转换成pdf用email发送给客户,一开始小编被CAD怎么转换成pdf的问题弄得特憋屈,不过现在已经不用担心了,CAD转pdf那是小case,你是不是很想要知道小编是如何完成这两种格式之间的转换的?往下看,带着大家了解:cad怎么转换成pdf 简单又实用.        步骤一,打开任意浏览器,输入迅捷在线pdf转换器,找到该转换的转换网站,点击进入. 步骤二,大家可以在软件顶部菜单栏中查看该在线转换的每一个功能,鼠标放在任意项目上

简单但实用的二分法(一)

二分法,作为一个c的初学者,基本上是都要学的,简述一下二分的思想,比如说给你10个数:1,3, 5, 4, 6, 10, 9, 8, 7, 2.让你查找其中的一个数,比如2,最容易想到的方法就是从第一个数到最后一个数遍历一遍. for(i = 0; i < n; i++) { if(a[i] == m) break; } ......... 但这样是有问题的,如果n的值很大,大到1000000,,10000000,这样就明显不行,会超时.那怎么办呢?这就轮到我们的二分法出场了. 二分法,顾名思义

SpringMVC 理论与实用技术(一) 简单、实用、易懂的几个实例

SpringMVC先来看一下百度百科中的定义; Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面.Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块.使用 Spring 可插入的 MVC 架构,可以选择是使用内置的 Spring Web 框架还可以是 Struts 这样的 Web 框架.通过策略接口,Spring 框架是高度可配置的,而且包含多种视图技术,例如 JavaServer Pages(JSP)技术.Velo

【转载】手把手教你使用Git(简单,实用)

手把手教你使用Git(简单,实用) 标签: git 2016年04月21日 20:51:45 1328人阅读 评论(0) 收藏 举报 一:Git是什么? Git是目前世界上最先进的分布式版本控制系统. 二:SVN与Git的最主要的区别? SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,用的都是自己的电脑,所以首先要从中央服务器哪里得到最新的版本,然后干活,干完后,需要把自己做完的活推送到中央服务器.集中式版本控制系统是必须联网才能工作,如果在局域网还可以,带宽够大,速度够

自建简单又实用的动态域名管理系统

个人动态域名管理系统.Personal-DDNS. 简单又实用的动态域名管理系统, 自建动态域名管理系统 使用 bind9 + php + mysql , 创建个人的动态域名系统. Use bind9 + php + mysql , create a personal ddns server, update by an URL. Only support "A","AAAA","TXT" recorder. 项目地址 https://github

读《一分钟经理人》,简单却实用的为人处事的道理

最新不知怎么,很有读书的欲望(可能压力比较大,需要靠阅读来提高自信),正好因为小组去年的突出表现,我们5人的小组得了部门的创新项目团队,获得了2000元的奖励.大家都在考虑怎么花这个钱呢,当然,吃一顿肯定是少不了的,但是也不用人均400这么奢侈,所以就想着拿一部分钱来买一些书,这样才能可持续发展嘛,下次还能再得奖. 对于买书我可积极了,在家里搜了下,确定了我自己想买的书单: <黑客与画家> <程序员修炼之道> <程序员的数学> <人月神话> <高效程序

几个简单又实用的PHP函数

简单方便使用: /** * 将多维数组转为一维数组 * @param array $arr * @return array */ function ArrMd2Ud($arr) { #将数值第一元素作为容器,作地址赋值. $ar_room = &$arr[key($arr)]; #第一容器不是数组进去转呀 if (!is_array($ar_room)) { #转为成数组 $ar_room = array($ar_room); } #指针下移 next($arr); #遍历 while (lis

利用Python自动化生成逼格高的日历!简单又实用

本次内容有感于<Python编程快速上手-让繁琐工作自动化>. 根据书中的「处理Excel电子表格」章节内容,做出一份专属日历. 使用的模块为openpyxl,一个能读取和修改Excel电子表格的Pyhton模块. 实现自动化处理表格信息,摆脱无趣无味. 此外还有calendar模块,通过该模块生成日历信息. 最后利用openpyxl和calendar库,实现自动化生成爱豆日历. / 01 / 科普 在进行代码操作前,简单对相关知识做个简单的学习. 一个Excel电子表格文档称为一个工作?.

简单易懂实用的大图轮播

<head> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>大图轮播</title> <style type="text/css"> * { margin: 0px; padding: 0px; } #container { width: 500px; h