• 做一个“懒惰”的程序猿




    懒惰,算是本人的一大缺点,可是我发现,事物的两面性在懒惰上得到充分体现。懒惰,并不是一无是处。


    比方,编写脚本。



    本人编写脚本的原因有两个:一是省事,不用每次敲那么多东西。二是本人健忘,无法记得冗长的命令。
    就拿IPC的代码来讲,
    IPC代码根文件夹中,有N多build-XXX。而每个build-XXX文件夹下的内容,则全然相似,都有一个set.sh。
    这就是编译用的脚本。
    随便拿出一个来,其内容大致例如以下:
    cmake .. -DCROSS_COMPILE=arm-hisiv100nptl-linux- -DBOARD=hi3518C -DCONFIG_PATH=/etc/conf.d/jovision/ -DTINY_ONVIF_SUPPORT=ON -DSD_RECORD_SUPPORT=ON -DGB28181_SUPPORT=ON
    看看吧,假设每次编译之前,都要把它们敲出来,是一件多么悲剧的事情。
    把它们写成脚本,是多么理所应当的事情呢?
    然而,不管是曾经公司见过的超级高手,抑或是如今的非常多同事,都喜欢把它们一个字一个字的敲出来。


    比方,文件编辑。



    Onvif中,每一个功能,也就是其相应的每一个函数,都有其訪问权限。在Onvif2.4中,有接近200个函数。
    (ONVIF-Core-Specification-v210.pdf
    这个PDF中,搜索 Access Class ,能够得到每一个函数的訪问权限。比如:SetSystemDateAndTime的权限是:RITE_SYSTEM)
    那么,这些函数的权限,要怎样做呢?
    在往下看之前,最好还是下载下来,想想办法。


    这里介绍一下,我的做法:
    1,ctrl+a,选中全文,将其拷贝到UltraEdit中。(好多同事版权意识非常强,仅仅用开源的Notepad++)
    2,ctrl+F,搜索Access Class。这里要注意,须要选中:列出包括字符串的行
    3,这时点下一个,工具会列出全部的行,此时点“剪贴版”
    4,新建一个UltraEdit文件,粘贴,此时你会得到类似例如以下的东西:
    SetNTP  Access Class: WRITE_SYSTEM
    GetDynamicDNS  Access Class: READ_SYSTEM
    SetDynamicDNS  Access Class: WRITE_SYSTEM
    GetNetworkInterfaces  Access Class: READ_SYSTEM
    5,技巧一结束,技巧二開始
    6,中间的Access Class: 使用替换工具,把它们替换成空格
    7,替换,将两个空格,替换成一个。
    8,一直点替换,直到失败
    9,空格替换成",
    10,就变成了这样:
    GetWsdlUrl", PRE_AUTH
    GetServices", PRE_AUTH
    GetServiceCapabilities", PRE_AUTH
    GetCapabilities", PRE_AUTH
    GetHostname", PRE_AUTH


    11,有些版本号的UltraEdit,能够支持把回车,替换成其他内容,有些版本号不行的话,能够考虑用Notepad++
    12,回车变成:}, {"  最后变成这样:
    {GetWsdlUrl", PRE_AUTH},
    {GetServices", PRE_AUTH},
    {GetServiceCapabilities", PRE_AUTH},
    {GetCapabilities", PRE_AUTH},
    {GetHostname", PRE_AUTH},
    大功告成


    比方,图片处理



    之前做DVR的时候,美工会做一堆的图片,都是PDF的。
    而,实际project中,须要用16位bmp。
    诸位是怎么办的呢?一张一张的另存为?


    我的办法是:
    Photoshop有一个,类似宏录制的功能, 文件-》自己主动-》批处理。 能够生成一个EXE文件。
    仅仅要把一个文件夹,拖到这个EXE上,就会一下子将全部文件,转化成指定格式。很方便


    中心思想



    方法还有非常多,但我准备授人以渔了。期望有人能领会精神,忘记招式。
    一件工作在開始之前,先想想有没有偷懒的办法。尤其是反复性的工作。一定有什么方法或者工具,能够高速完毕任务的。
    人之所以差别于动物,就是会用工具不是吗?
  • 相关阅读:
    滴滴日送400万红包,仅仅为人群不冷漠?
    C++提供的四种新式转换--const_cast dynamic_cast reinterpret_cast static_cast
    GreenDao开源ORM框架浅析
    Python 计数器
    Linux虚拟内存的添加
    Linux iptables
    Python set
    Python dict get items pop update
    Python contains
    Python reverse
  • 原文地址:https://www.cnblogs.com/mengfanrong/p/3836630.html
Copyright © 2020-2023  润新知