受微软青年星火项目组的邀请,我和微软项目组的朋友参加了一场针对儿童编程的技术指导. 儿童和编程,本来是两个完全不靠边的词.在大家的常规思维中,编程一直是软件开发人员的事情,是高科技类型的工作,高不可攀.让儿童来参与编程,看起来是件不可思议的事情.但是,通过一个上午与一群孩子的沟通,孩子们思维中的无限创造力完全改变了我的看法. 这是一群10岁左右的儿童,大部分人完全没有编程的思维概率,只是玩过游戏,知道安装在手机上的软件和游戏需要通过编程才能创造出来. 活动开始,我们和微软项目组的朋友介绍了今天活…
一.课程介绍 本次分享课程属于<C#高级编程实战技能开发宝典课程系列>中的第三部分,阿笨后续会计划将实际项目中的一些比较实用的关于C#高级编程的技巧分享出来给大家进行学习,不断的收集.整理和完善此系列课程!本次高级系列课程适合人群如下: 1.有一定的NET开发基础并对Socket技术有一定了解和认识. 2.喜欢阿笨的干货分享课程的童鞋们. 希望大家在选择阿笨的 C#高级编程实战技能开发宝典课程系列的时候,根据自身的情况进行选择,由于本次课程不是零基础教学课程系列,所以说.NET基础差的到了没朋…
因为人工智能和机器人学科的崛起,似乎一夜之间未来就变成了程序员的天下,尤其是在知乎上,不会编程都没办法和这群程序员好好说话了.我已经搬了一辈子砖了,难道我的孩子也还要接着搬?这就是现在大部分家长的焦虑.不要焦虑,他们说的没错,未来编程是基本技能,比英语还要基本.编程真的没那么难,小学生都可以学.不过现在外面儿童编程培训班鱼龙混杂,你自己要是一点都不懂,你怎么相信你的孩子能得到专业的教育? 没关系,我们先自己学一遍,小学生都能搞定的东西,你有什么道理学不会? 来来来,一周时间,保证你将成为你孩子的…
微软ASP.NET技术“乱谈” 2014新年了,顺手写的一点文字,主要谈谈我对当前微软ASP.NET技术的看法,比较随意,大伙儿随便看看吧. 1 当前微软Web平台技术全貌 从2002年发布.NET 1.0和Visual Studio.NET,到2013年.NET 4.5.1和Visual Studio 2013发布时,微软.NET平台己有11年的历史,其Web技术几经变迁,当前演化为以下的主要技术子领域: 一张图了解微软Web平台技术全貌 时至今日, ASP.NET底层的基础架构基本没太大变化…
本文摘自:http://www.job168.com/info/read_100394.html 微软的许多技术,如OLE.ActiveX.以及DirectX等都是基于COM技术而建立起来的.微软本身也大量地使用COM组件来定制他们的应用程序及操作系统.那么,什么是COM呢? 所谓COM即“组件对象模型”,是一种说明如何建立可动态互变组件的规范,此规范提供了为保证能够互操作,客户和组件应遵循的一些二进制和网络标准.通过这种标准将可以在任意两个组件之间进行通信而不用考虑其所处的操作环境是否相同.使…
前言 本文通过介绍 GPU 编程技术的发展历程,让大家初步地了解 GPU 编程,走进 GPU 编程的世界. 冯诺依曼计算机架构的瓶颈 曾经,几乎所有的处理器都是以冯诺依曼计算机架构为基础的.该系统架构简单来说就是处理器从存储器中不断取指,解码,执行. 但如今这种系统架构遇到了瓶颈:内存的读写速度跟不上 CPU 时钟频率.具有此特征的系统被称为内存受限型系统,目前的绝大多数计算机系统都属于此类型. 为了解决此问题,传统解决方案是使用缓存技术.通过给 CPU 设立多级缓存,能大大地降低存储系统的压力…
B/S结构编程语言 ASP(Active Server Page 动态服务器页面)技术 微软早期推出的B/S编程技术,出现在JSP和ASP.NET之前,PHP当时也很不稳定.ASP之前,动态网站使用GUI(Common GateWay interface)编写.CGI是一种落后的技术,原理简单,代码混乱,高耗资源,难以维护. ASP 是一种技术框架,一经出现变大受欢迎,可以用VBScript或Jscript这两种语言来写.如果学会了VB或JavaScript,学习起来比较轻松.国内主要采用VBS…
一.WCF课程介绍 1.1.Web Service会被WCF取代吗? 对于这个问题阿笨的回答是:两者在功能特性上却是有新旧之分,但是对于特定的系统,适合自己的就是最好的.不能哪一个技术框架和行业标准作比较,任何对于二者的比较都是错误的,因为两者根不不在同一个范畴里.就好比不能拿个汽车和交通法规比较一样,这是个误区. 阿笨的宗旨就是学完此<C#面向服务编程技术WCF从入门到实战演练>课程,让您从零基础上手后直接将学习的成果运用到实际项目中去.阿笨本次分享的WCF技术是完全来源于切身实际项目中,如…
一.FastSocket课程介绍 .NET框架虽然微软提供了socket通信的类库,但是还有很多事情要自己处理,比如TCP协议需要处理分包.组包.粘包.维护连接列表等,UDP协议需要处理丢包.乱序,而且对于多连接并发,还要自己处理多线程等等.本期分享课程阿笨给大家带来的是来源于github开源Socket通信中间件:FastSocket,目的就是把大家从繁琐的网络编程技术中彻底地解放和释放出来. 阿笨只想安安静静的学习下网络编程技术Socket后,将学习的成果直接灵活的运用到自己的实际项目中去.…
三. MFC篇 Windows API是面向过程的接口,因此对于当时的编程技术来说,它是完美无缺的.但是,随着人们逐渐使用C++进行Windows程序的开发,迫切需要建立与Windows API的面向对象包装的接口.1992年,微软将Windows API开发成为它的应用程序框架(AFX),后来该产品又演变成为目前的微软基础类库(MFC)产品.下图2展示了MFC的顶级类层次结构. 图2.MFC的类层次结构. MFC为使用C++开发Windows GUI应用程序提供了一个十分全面的基础框架,它对以…
背景: 1:目前微软系.NET技术高端人才缺少. 2:企业很难直接招到高端技术人才. 3:本人提供.NET技术顾问,保障你的产品或项目在正确的技术方向. 技术顾问服务 硬服务项: 1:提供技术.决策.框架支持! 2:对产品提供系统安全.并发.性能.重构等解决问题的方法或建议! 3:协助技术人员招聘服务. 4:友情帮忙宣传公司产品. 5:本人的框架或产品可终身免费使用. 6:在线解答本人的框架问题. 软服务项: 1:对公司的技术人员,提供技术培训服务(远程或线下),提升公司整体技术水平. 3:首次…
最近我研究技术的一个重点是java的多线程开发,在我早期学习java的时候,很多书上把java的多线程开发标榜为简单易用,这个简单易用是以C语言作为参照的,不过我也没有使用过C语言开发过多线程,我只知道我学习java多线程开发是很难的,直到现在写这篇文章的时候,虽然我对java多线程里的API比以前熟悉更多了,但是如果碰到了生产开发里如何将多线程设计更好,我心里的底气还是不足的,哎,缺乏很有意义的实践,我现在要等待让我实践这部分技术的机会了. 话外话,研究多线程是因为我在一本讲并发编程的书籍里看…
下面是本博客原创的微软Power BI技术相关文章,对于部分转载文章和资源,会注明出处. 本博客将发布基于微软Power BI相关的基础入门文章,视频教程等资源,敬请关注. 个人建立的Power BI技术群,目前正在学习阶段,有兴趣的朋友可以一起学习讨论.QQ群号:564786745(申请加入请备注(非该备注无法加入):博客园Power BI) 下列文章已经逐步完成,逐步发表中: 1.微软新神器-Power BI,一个简单易用,还用得起的BI产品,你还在等什么 2.千呼万唤始出来,微软Power…
Atitit.异步编程技术原理与实践attilax总结 1. 俩种实现模式 类库方式,以及语言方式,java futuretask ,c# await1 2. 事件(中断)机制1 3. Await 模式(推荐)1 4. Java的实现模式futuretask 对于c#的task类库(推荐)1 4.1. 使用Java 8的CompletableFuture实现函数式的回调.htm2 5. Timer模式2 6. Thread模式(不推荐,太底层)2 1. 俩种实现模式 类库方式,以及语言方式,ja…
学习编程技术要点及方向亮点: 传统学习编程技术落后,应跟著潮流,要对业务聚焦处理.要Jar, 不要War:以小为主,以简为宝,集堆而成.去繁取简 Spring Boot,明日之春(future of Spring).集堆综合技术如 jHipster 是必然的软件开发途径前后端分离技术,跨域资源共享( CORS).提供Spring Boot1.3.6+Angular1.4.0UI-Route 0.40+Mongodb 2.6.3 CRUD学习程式例子.前言 一般大专的软件技术课程是这样的,有系统地…
本文学习来源于<javascriptDOM编程艺术>仅作笔记 学会怎样才能利用DOM脚本编程技术以一种既方便自己更体贴用户的方式去充实和完善你们的网页. 循序渐进:从最核心的内容开始,逐步添加额外的功能. 预留退路:为内容添加的样式和行为要留有足够的退路,以保证用户能访问到核心内容. 以用户为中心的设计: DHTML(动态HTML):是dynamic HTML 的简称.它不是一项单一的新技术,而是HTML.CSS.javascript这三种技术相结合的产物.现在的DHTML已经成为了一种简单.…
读书笔记:提高C++性能的编程技术   第1章 跟踪范例 1.1 关注点 本章引入的实际问题为:定义一个简单的Trace类,将当前函数名输出到日志文件中.Trace对象会带来一定的开销,因此在默认情况下不会开启Trace功能.问题是:怎么设计Trace类,使得在不开启Trace功能时引入的开销最小. 1.2 使用状态变量开关功能 用宏来开关Trace功能很简单,在不开启时开销完全没有: #ifdef TRACE Trace trace("aaa"); #endif 缺点是每次开关都需要…
准备了半年后,终于决定在这里开始我的scala编程技术学习体验撰写之旅.初步打算在这里把我学习.体验.掌握scala编程的过程与有兴趣的朋友分享.我想,虽然我这不是正式论文或者教课书之类的,但写个开场白总是好的.以后都是技术性的表述了,还是把握最后机会唠叨一下吧... 刚好完成了一个行业云平台项目,决定暂停下来仔细思考一下下一步应该怎么走,是不是要改改方向?在之前的项目里,作为项目开发负责人,为了保证项目的成功率,必须完全依赖公司现有的技术.技能资源,绝不能轻易引进新的技术线路和手段,所以眼睁睁…
linux脚本编程技术 一.什么是脚本 脚本是一个包含一系列命令序列的可执行(777)文本文件.当运行这个脚本文件时,文件中包含的命令序列将得到自动执行. 二.脚本编程 #!/bin/sh 首行固定格式 #!表明该脚本的的解析器,这里使用/bin/sh来解析 2.1变量 shell脚本允许用户设置和使用自己的变量,变量可以是数字或者字符串,用户无需指定其类型,也无需在使用前定义. #!/bin/sh a="hello world" b=5 echo “A is: $a” //使用变量时…
在沉浸于编码一段时间以后,你会渐渐对这些东西习以为常.因为,你知道的-- 任何事情有可能出错,没错,的确如此. 这就是为什么我们要采用"防御性编程",即一些偏执习惯的原因.下面是我个人认为的10个最有用但偏执的Java编程技术.一起来看一看吧: 1.将String字符串放在最前面 为了防止偶发性的NullPointerException 异常,我们通常将String放置在equals()函数的左边来实现字符串比较,如下代码: Java // Badif (variable.equals…
作为一名web工程师都希望自己做的web应用能被越来越多的人使用,如果我们所做的web应用随着用户的增多而宕机了,那么越来越多的人就会变得越来越少了,为了让我们的web应用能有更多人使用,我们就得提升web应用服务端的并发能力.那么我们如何做到这点了,根据现有的并发技术我们会有如下选择: 第一个做法:为每个客户端发送给服务端的请求都开启一个线程,等请求处理完毕后该线程就被销毁掉,这种做法很直观,但是在现代的web服务器里这种做法已经很少使用了,原因是新建一个线程,销毁一个线程的开销(开销是指占用…
在沉浸于编码一段时间以后(比如说我已经投入近20年左右的时间在程序上了),你会渐渐对这些东西习以为常.因为,你知道的…… 任何事情有可能出错,没错,的确如此. 这就是为什么我们要采用“防御性编程”,即一些偏执习惯的原因.下面是我个人认为的10个最有用但偏执的Java编程技术.一起来看一看吧: 将String字符串放在最前面 为了防止偶发性的NullPointerException 异常,我们通常将String放置在equals()函数的左边来实现字符串比较,如下代码: // Bad if (va…
实验二   JSP编程 一.实验目的1. 掌握JSP指令的使用方法:2. 掌握JSP动作的使用方法:3. 掌握JSP内置对象的使用方法:4. 掌握JavaBean的编程技术及使用方法:5. 掌握JSP中数据库编程方法: 二.实验要求 : 利用JSP编程技术实现一个简单的购物车程序,具体要求如下. (1)用JSP编写一个登录页面,登录信息中有用户名和密码,分别用两个按钮来提交和重置登录信息. (2)编写一个JSP程序来处理用户提交的登录信息,如果用户名为本小组成员的名字且密码为对应的学号时,采用J…
linux 编程技术No.1前期准备工作 GCC的编译过程分为预处理.生成汇编代码.生成目标代码和链接成可执行文件等4个步骤. 使用vim编写C 文件 : [lining@localhost program]$ vim hello.c 这样就会在program文件夹生成hello.c文件 编译C代码:使用如下命令“gcc 代码文件名”  如: [lining@localhost program]$ gcc hello.c 这样就会生成二进制可执行文件名称位a.out. 如果需要指定输出的文件名称…
Sikuli是一种使用截图进行UI自动化测试的技术.Sikuli包括sikul脚本,基于Jython的API以及sikuli IDE.Sikuli可以实现任何你可以在显示器上看到ui对象的自动化,你可以通过编写一些代码来实现web 页面,window/linux/Mac OS X桌面应用.甚至是iphone和android模拟器的自动化测试. 安装jruby/sikuli及其他软件: 在这里我们先介绍一下如何使用sikuli + jruby + watir-web_driver来实现基于web的…
源:C++ Builder多线程编程技术经验谈 线程之可行性   在很多情况下,可能需要为程序创建线程.这里给出其中一些可能性: (1)如果创建的是一个多文档接口(Multiple Document Interface,MDI)程序,那么为每个窗口分配一个线程就显得十分重要了,例如,对于一个通过多个Modem同时连接到多个主机的MDI通信程序而言,如果每个窗口都有它自己的线程来和一个主机通信,那么整个事情就简化很多. (2)如果使用的是一台有多个处理器的机器,并希望充分利用所有可能获得的CPU资…
前言 感谢! 承蒙关照~ 探索Java中的网络编程技术 网络编程就是io技术和网络技术的结合,网络模型的定义,只要共用网络模型就可以两者连接.网络模型参考. 一座塔有七层,我们需要闯关. 第一层物理层->第二层数据链路层->第三层网络层->第四层传输层->第五层会话层->第六层表示层->第七层应用层. 物理层是主要定义物理设备标准,数据链路层是主要讲从物理层接收的数据进行MAC地址(网卡的地址)的封装与解封装.这层的数据较帧. 网络层是将从下层接收到的数据进行IP地址的…
摘要 深度探索 Microsoft .NET提供的线程池, 揭示什么情况下你需要用线程池以及 .NET框架下的线程池是如何实现的,并告诉你如何去使用线程池. 内容 介绍 .NET中的线程池 线程池中执行的函数 使用定时器 同步对象的执行 异步I/O操作 监视线程池 死锁 有关安全性 结束 介绍 如果你有在任何编程语言下的多线程编程经验的话,你肯定已经非常熟悉一些典型的范例.通常,多线程编程与基于用户界面的应用联系在一起,它们需要在不影响终端用户的情况下,执行一些耗时的操作.取出任何一本参考书,打…
一.SuperSocket课程介绍 1.1.本期<C#网络编程技术SuperSocket实战项目演练>课程阿笨给大家带来三个基于SuperSocket通讯组件的实战项目演示实例: ● 基于SuperSocket开发的客户端和服务端聊天应用程序(ABenNET.SuperSocket.AppChat). ● 基于SuperWebSocket开发的客户端和服务端聊天应用程序(ABenNET.SuperWebSocket.AppChat). ● 基于SuperWebSocket开发的网页端和服务端聊…
简介 在软件开发中,多线程编程技术被广泛应用,相信多线程任务对我们来说已经不再陌生了.有了多线程技术,我们可以同做多个事情,而不是一个一个任务地进行.比如:前端和后台作交互.大任务(需要耗费一定的时间和资源)等等.也就是说,我们可以使用线程把占据时间长的任务放到后台中处理,而不影响到用户的使用. 线程间通讯 有一个非常重要的队列,就是主队列.在这个队列中处理多点触控及所有与UI相关操作等等.它非常特殊,原因有两点.一是我们绝对不想它阻塞,我们不会将需要执行很长时间的任务放在主队列上执行.二是我们…