Security token service
微服务架构和REST API是现在非常热门的技术话题,采用微服务架构之后带来的一个棘手问题是安全和身份认证(Authentication)。这里所指的身份认证,既包括用户的身份,更强调程序和服务的身份,也就是微服务之间调用的信任关系。
微服务架构和REST API是现在非常热门的技术话题,采用微服务架构之后带来的一个棘手问题是安全和身份认证(Authentication)。这里所指的身份认证,既包括用户的身份,更强调程序和服务的身份,也就是微服务之间调用的信任关系。
现在最热门的开发领域无疑是人工智能(AI)了,这直接带动了Python的热度。连全国计算机等级考试(NCRE)也已经将Python纳入了考试课程,取代了实行很多年的Visual FoxPro。吴军老师在《吴军的谷歌方法论》第48期答读者问中提到,对于计算机的初学者,他也建议学习Python,原因是Python对接AI和大数据分析的工具更容易些。作为一名普通的软件开发人员,我也希望能掌握一些开发AI的技术,来给一般的应用程序赋予一些AI的能力。Python语言断断续续学了好多年,也有一些基础,但总感觉和AI结合的不够,直到我了解并熟练掌握Jupyter Notebook。
根据地球上任意两地的经纬度,可以计算它们在球面上的最短距离(Great-circle Distance / Orthodromic Distance)及相对始末位置的方位角(Bearing)。
在.NET的开发中,偶尔会遇到assembly找不到的问题,相信.NET程序员对下面的错误信息都不陌生。大多数时候,我们去bin目录检查,把缺失的dll文件拷贝到bin目录,问题就解决了。但也有例外的时候,因此搞清楚.NET CLR是如何寻找assembly就很有必要了。
历经三门考试,在这个阳光明媚的初春,2018年的第一个小目标——考取微软认证解决方案开发者(MCSD, Microsoft Certified Solutions Developer)证书,终于达成了。
回头看看,从大学时期的ASP开始,到ASP.NET、WinForm开发,到后来的ASP.MVC、WCF开发,再到近些年的ASP.NET Web API以及Azure相关的开发,我已经在微软技术栈上学习和实践了近10年。考取这个证书,不是为了面试找工作,而是对自己这么多年来学习的一个检验,给自己的一个交代。
Word Count 是学习Spark开发的一个经典案例,类似于其他编程语言中的Hello World程序。但这个例子是基于英文的,英文断句分词是一件比较容易的事情,一般都是以空格为分隔符进行分词。但对于中文来说,事情就复杂了。
我们先来看一段C#代码。
1 | static void Main(string[] args) |
在Visual Studio中编译、执行,一切正常。你会觉得这段代码很普通,没啥特别之处。但仔细观察,你会发现string数组竟然可以隐式地转换成IList<T>这个接口,这不是很奇怪吗?