从大一开始就开始接触java这门语言。但是在这之前也接触了vb,c,asp等等开发语言,唯独java让人感觉严谨,清爽,各种数据之间的不拖泥带水。这才花费更多时间去研究他。但是学着学着,发现他体系的庞大,分支很多。在开始的时候没有收住,结果学习周期过长,在生产环境中的实践却不多。

就拿SSH来说,花费了整整一年时间去研究,但是公司从始至终也没有去用这个,说是太臃肿,反应慢,难以部署和调试。至此,经过了5、6年也最终没有派上用场。生产环境下,也一直是使用jsp+jquery进行开发,核心框架却是公司自己开发的。

学习和使用java的过程,大家一定要有一种定力,不要随便被他新出的各种领域的技术吸引,最好是选择一个领域,深入研究,这样才能够有所收获,不然,每个东西都试一下,结果时间花了,最终长时间用不上,也是得不偿失。如果实在是想与研究,建议不要闭门造车,自己一个人去瞎琢磨,聚集一群志同道合的朋友,将一个大窝窝头分着啃,然后互相交流心得。比如,刚才提到的ssh,内含信息量太大,要研究源码的话一个人估计也至少得花上一两年去研究。虽然我们生产环境里面用不上,但是几个人分别对其中一部分进行研究,再探讨,效果会很不错的。

也是一个偶然的机会,从朋友那里得知他在使用php开发,一开始并不是很喜欢他的语法和开发模式。语法方面,每次都要在变量前面加上“$”符号,让人感觉很别扭。基本上很多内容都直接跟html混合到一起,一种特别混乱的感觉。

但是经历了一些项目后,发现java虽然是严谨,一丝不漏。但是每次开发都需要先将各种框架,各种类摆好,搭好架子再进行具体内容的开发,不然后面就是一团糟了。php就让人摆脱这点了,因为他同时兼备结构化语言和面向对象语言的特点。小web站点我们可以直接快速结构化开发,局部内容进行OO化就行了。所以让我们项目能够迅速实现。

另外,在学习周期方面也确实比较短,有点编程底子就可以在不到一周快速上手,而且可以进行生产开发了。

PHP里面也提供了很多灵活的语言结构,让代码看起来更加高效,紧凑。比如,可变变量和可变函数的使用。

<?php

function get_pen(){

echo "We get a pen.";

}

function get_pencil(){

echo "We get a pencil.";

}

?>

用户给我们一个参数$tool,代表钢笔或铅笔

第一种调用方法:

if($tool == "pen"){

get_pen();

}elseif($tool == "pencil"){

get_pencil();

}

第二种调用方法:

$getsth = "get_".$tool;

$getsth();

本来需要大段代码的编写,这里只需要简单的拼接就行了。这种用法在php中大量存在,极大简化我们的开发过程,提高开发效率。

正因为php诸多这样的优秀特性,加上他自身的不断发展,使得他越来越流行了。也让人爱不释手不是吗?

从java到php的更多相关文章

  1. Spark案例分析

    一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...

  2. 故障重现(内存篇2),JAVA内存不足导致频繁回收和swap引起的性能问题

    背景起因: 记起以前的另一次也是关于内存的调优分享下   有个系统平时运行非常稳定运行(没经历过大并发考验),然而在一次活动后,人数并发一上来后,系统开始卡. 我按经验开始调优,在每个关键步骤的加入如 ...

  3. Elasticsearch之java的基本操作一

    摘要   接触ElasticSearch已经有一段了.在这期间,遇到很多问题,但在最后自己的不断探索下解决了这些问题.看到网上或多或少的都有一些介绍ElasticSearch相关知识的文档,但个人觉得 ...

  4. 论:开发者信仰之“天下IT是一家“(Java .NET篇)

    比尔盖茨公认的IT界领军人物,打造了辉煌一时的PC时代. 2008年,史蒂夫鲍尔默接替了盖茨的工作,成为微软公司的总裁. 2013年他与微软做了最后的道别. 2013年以后,我才真正看到了微软的变化. ...

  5. 故障重现, JAVA进程内存不够时突然挂掉模拟

    背景,服务器上的一个JAVA服务进程突然挂掉,查看产生了崩溃日志,如下: # Set larger code cache with -XX:ReservedCodeCacheSize= # This ...

  6. 死磕内存篇 --- JAVA进程和linux内存间的大小关系

    运行个JAVA 用sleep去hold住 package org.hjb.test; public class TestOnly { public static void main(String[] ...

  7. 【小程序分享篇 一 】开发了个JAVA小程序, 用于清除内存卡或者U盘里的垃圾文件非常有用

    有一种场景, 手机内存卡空间被用光了,但又不知道哪个文件占用了太大,一个个文件夹去找又太麻烦,所以我开发了个小程序把手机所有文件(包括路径下所有层次子文件夹下的文件)进行一个排序,这样你就可以找出哪个 ...

  8. Java多线程基础学习(二)

    9. 线程安全/共享变量——同步 当多个线程用到同一个变量时,在修改值时存在同时修改的可能性,而此时该变量只能被赋值一次.这就会导致出现“线程安全”问题,这个被多个线程共用的变量称之为“共享变量”. ...

  9. Java多线程基础学习(一)

    1. 创建线程    1.1 通过构造函数:public Thread(Runnable target, String name){}  或:public Thread(Runnable target ...

  10. c#与java的区别

    经常有人问这种问题,用了些时间java之后,发现这俩玩意除了一小部分壳子长的还有能稍微凑合上,基本上没什么相似之处,可以说也就是马甲层面上的相似吧,还是比较短的马甲... 一般C#多用于业务系统的开发 ...

随机推荐

  1. A Simple Problem with Integers poj 3468 多树状数组解决区间修改问题。

    A Simple Problem with Integers Time Limit: 5000MS   Memory Limit: 131072K Total Submissions: 69589   ...

  2. IOS 按比例裁剪图片

    拍照或者从图片库中获取图片 操作过程中容易闪退,也总会有内存压力警告,第一步,首先可以考虑裁剪图片,实际上可能不需要那么大的.其次可以考虑把耗时的比如存储过程放进线程. 这里封装裁剪图片的类方法. / ...

  3. Android(java)学习笔记68:同步代码块 和 同步方法 的应用

    1. 同步代码块 和 同步方法 代码示例: (1)目标类,如下: package cn.himi.text; public class SellTicket implements Runnable { ...

  4. css居中的几种方式

    居中分水平和垂直两种,使用的频度也算是很高,下面分情况来讨论一下几种常用的实现方式. 欢迎指正文中的错误,同时如果有学习到新的方式也会更新在后面,也方便以后温故知新. 1.margin 这种方式只能实 ...

  5. 【Android Studio使用教程5】使用SDK Manager时, SDK下载更新不了的解决方案(eclipse 也适用)

    在线更新sdk时会很慢,甚至下载不了, 此时在SDK Manager中,选择Tools,Proxy里面填上 mirrors.neusoft.edu.cn 和 80 把下面的force https xx ...

  6. 【开源项目8】Android开源项目分类汇总【畜生级别】

    欢迎大家推荐好的Android开源项目,可直接Commit或在 收集&提交页 中告诉我,欢迎Star.Fork :) 微博:Trinea    主页:www.trinea.cn    邮箱:t ...

  7. sphinx-2.2.10-1.rhel6.x86_64 rpm包安装的位置

    /etc/logrotate.d/sphinx /etc/rc.d/init.d/searchd/etc/sphinx/etc/sphinx/sphinx.conf/usr/bin/indexer/u ...

  8. iOS 犄角旮旯的知识

    1.全局变量 static NSInteger kImageHeight = 300; #define kImageHeight 300 2.通知中心 开始编辑 UITextViewTextDidBe ...

  9. 安装 vsftpd

    (1)安装vsftpdsudo apt-get install vsftpd (2)配置sudo vi /etc/vsftpd.conf #anonymous_enable=YESlocal_enab ...

  10. PHP 错误处理机制

    在日常的项目开发过程中,总是会出现一些我们意想不到的异常错误,如果我们对此没有进行相对完善的处理,那么程序看上去也很不专业,也很可能就会成为别人攻击系统的有效信息:有些错误异常会终止脚本执行,这个时候 ...