XDH_LESSON2

指令式编程基础

思维方式

昨日复习

1.Markdown 是一种轻量级的[标记语言],简洁的语法代替排版,使我们专心码字,一切排版格式都不用我们来操心,更重要的是导出格式随心所欲!
2.全栈工程师的概念,一个人搞定服务器、运行环境、数据库、前端、后端、APP(这里我们注重的是Hybrid App) 直到上线!


Hybrid App(混合模式移动应用)是指介于web-app、native-app这两者之间的app,兼具“Native App良好用户交互体验的优势”和“Web App跨平台开发的优势”。

上面讲到的Native App是一种基于智能手机本地操作系统如iOS、Android、WP并使用原生程式编写运行的第三方应用程序,也叫本地app。


3.编程语言的发展历史,各种语言的优势和劣势,编程语言发展趋势只会越来越简单,越来越容易被理解,降低对机器的内存,硬盘消耗。
4.指令式编程和函数式编程两种编程方式;指令式编程是人像计算机一样思考,按命令执行;函数式编程是计算机像人一样思考,抽象的表达式计算。

今日内容

1.指令式编程理论
指令式编程是人像计算机一样思考,按命令执行;指令式编程不属于CPU指令。

顺序结构语句
var  a;
a =5;
a =a*2;
a +=1;
a *=1;
a++;

这带有变量的指令,变量存储在内存中.
执行流程是从上而下的顺序结构


分支结构语句:
if(true){
}
else{
}

给简单的判断,进入不同的结构。


循环结构语句:
    (初期循环结构是 goto 形式)
    a++;
    a:
    if( a > 10)  goto a;
    //当a>10条件满足时,进入无限循环,想要跳出循环,两种方法:
    // 1. 从满足条件开始起一直到不满足
    // 2.
    a:
    if( a > 50 ) goto b;
    goto a;
    b:

编程就是让程序越来越简洁。while语句简化了繁琐。

 var i=0;
 while(i<100){ 
 //先看满不满足条件。条件不满足跳出循环。
       i++; 
 //终止循环break; 
 }

do while不看条件先执行再说。
程序总是慢慢的再往更加简洁方向发展,然而出现了for.

for(var i=0;i<100;i++){                    
       }

指令式编程的最基本的指令就这三种了,执行流程也要遵循:

  1. 从上而下
  2. 根据条件

函数循环:
  var a=0;
  function f( ) {
     console.log(a); 
  }
  f();
  //当函数依次执行到  f() 函数时(存储到了内存但并不执行),没有被调用,不执行函数体,所以来到下面 函数 f() 被调用,返回到 函数执行函数体。 
 var a=0;
  function f( ) {
     console.log(a); 
     return 0;
  }
  var s = f();  
  // 函数体内有返回值,就会把返回值返回到调用处。也就是说 s等于0;

下面内容是从原生态的循环一步步进化简洁。

以打印图形来开始
打印图形

这样的重复的循环如果很多次,就会非常麻烦。如下可以让事情变得简单明了


打印图形

通过类似循环可以打印出矩形,三角形,梯形的形状,如下为矩形



2.指令式编程中JS原理

团队项目开发中,存在重名问题
先熟悉JS作用域

     <!DOCTYPE html>
       <html>
     <head>
         <meta charset="utf-8">
         <title>JS 中的作用域</title>
   </head>
    <script type="text/javascript">
      var = a; //容易犯的低级的错误
      //var = a;
    </script>
     // 这是一个外部引入 js文件
    <script type="text/javascript">
      var = a; //这个文件也声明了一个这样的变     量,就务必会有冲突了
    </script>
  <body>

  </body>
</html>

分析作用域

            <!DOCTYPE html>
           <html>
          <head>
          <meta charset="utf-8">
         <title>JS 中的作用域</title>
         </head>
          <script type="text/javascript">
           var a  = 5;//全局变量
           function f() {
              var a = 3;//这里的a 是局部变量,就没有冲突了
              alert(a);    //这里输出的是函数内的a     
          }
          alert(a);//5  输出为全局变量
          f();// 3  函数调用局部变量

var a=5 //全局变量相当于 window.a(最顶层的a)=5;

        window.a=5;
       functioin f(){
               var a=3;
        //如果是a=3;在函数调用后变全局变量,a会一直往外寻找VAR的值。直到最顶层。
         alert(a);
          window.a =4;   
       }
    alert(a);//5
          f();// 3  
          alert(a);//4
    </script>
  <body>

  </body>
</html>       

网页中的 js 全局变量是 window.a ,在node 环境下 是: global a ;

//function函数也是对象。
(function(){})();
(function(){
             var user;
  alert('a');
   })();


 function f() {
  var a = function(){

     };
}


 function f() {
    return function () {//返回一个函数
            
     }
 }
 var x = f();//调用函数f(),返回一个函数,给了x;
 x();  //这样 x() 可以调用函数了!

总结

1.初步认识指令式编程与函数式编程,了解到指令式编程思维方式。
2.了解指令式编程下JS变量问题。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,911评论 5 460
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 82,014评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 142,129评论 0 320
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,283评论 1 264
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,159评论 4 357
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,161评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,565评论 3 382
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,251评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,531评论 1 292
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,619评论 2 310
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,383评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,255评论 3 313
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,624评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,916评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,199评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,553评论 2 342
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,756评论 2 335

推荐阅读更多精彩内容

  • Lua 5.1 参考手册 by Roberto Ierusalimschy, Luiz Henrique de F...
    苏黎九歌阅读 13,679评论 0 38
  • 个人学习批处理的初衷来源于实际工作;在某个迭代版本有个BS(安卓手游模拟器)大需求,从而在测试过程中就重复涉及到...
    Luckykailiu阅读 4,665评论 0 11
  • 上午约了一个朋友在KFC聊天,基于他说自己手上有一些资源可以合作,而我正好有兴趣,其实是有好奇心,想一探究竟。 我...
    香果季客服小小阅读 404评论 0 0
  • 今天我与好友去爬山了。 昨天的心情不太好,约上好友,坐了差不多半小时的公交车,然后来到山脚下。 我第二次来白云山,...
    九悠阅读 196评论 0 2
  • 新的一年开始了,今天开启上班模式。学习课程几个月了,每次学习都是一字不差的阅读,认真思考,反复琢磨,为什么我以前的...
    大卫张阅读 111评论 0 0