五千年(敝帚自珍)

主题:【原创】三年级也可以学编程 -- 月色溶溶

共:💬209 🌺336
分页树展主题 · 全看首页 上页
/ 14
下页 末页
    • 家园 从C开始学编程,类似让现代小学生从四书五经开始学语文

      20年前编程从C开始学,是没办法的事。现在编程从C开始,而且是业余爱好,实在是属于在摇篮里扼杀婴儿的行为。把武林秘笈五块一本售卖给小朋友,把业余爱好者编成业余不爱好者。

      现在有很多初学者可以轻松掌握的编程语言,Python, Ruby, Javascript。都可以完成实用的应用程序。

      当这些语言不能满足要求的时候,再接触C不迟。那时侯应该已经可以熟练掌握大多的编程概念,只需要再增加几个新概念而已。

      Python, Ruby 网上都有很多中英文入门教材,百度一下,越短的越好。一个礼拜基本就能掌握。然后一边编程,一边参考函数库说明书就可以了,背都不用背。

      编程的过程,一半是打字,一半是查函数说明书。类似开卷考试。

      想要熟练掌握一门语言,就编一两个对自己有用的小程序,自己一直梦想中存在的方便平时干事儿的小工具。

      比如一个管理自己写过文章的个人文件归档程序,或者搜索硬盘上文章内容的文件查找程序,某个网站信息变更的提醒工具,文件批量改名的工具,单位转换器。。。

      也许有现成的工具,但是自己写的,用起来顺手,还可以随时添加新功能。

      • 家园 我十分想要这样一个程序

        我的工作是跟公文打交道的,经常会有这样的情况,写到某一件事的时候,经常要到处去找别的文件中是怎么描述这件事的,这是很费时间的。

        如果有这样的软件,窗口分为左右两部分,左边的占四分之三或五分之四,右边的占四分之一或者五分之一。左边的一栏完全和word一样,用来输入和编辑文字。每当我在左边写到某个特定的词的时候,右边的一栏就会自动显示出所有别的文件中有这个词的段落,以及这个文件名称、形成时间。能让我一目了然地直接看到别的文件中相关内容,就省去我找文件的时间。

        这个技术上应该不是很难吧?

        • 家园 想了想,很难。

          需要一个关键词列表,左边需要监视输入,碰到关键词的时候触发搜索。因为每一个输入动作都需要引发多次搜索操作(搜索刚输入的一个,两个,三个,四个以及更多的字),所以关键词列表长一点就会有效能问题。

          确定关键词存在以后,右边要对一批(可能很多)docx文件进行全文搜索。这又是一个很大的工程,表现可能很不好。

          这两个效能问题联合在一起,我觉得这东西可能就没法用了。。。

          一个可行的妥协是写个小工具,你输入关键词它搜索word文件然后给你返还段落。不过这样就跟用Windows自带的搜索搜文件中包含的文字没啥本质区别了。。。

        • 家园 这个正是VBA的强项

          在Word里面做应该是很容易的。

          • 家园 还是不太明白

            按我的理解,宏就是把一个经常需要重复进行的复杂行为(比如行为A)简化为一个快捷键,当你需要进行行为A的时候,只要按一下那个快捷键就行了,这样可以大大提高效率。

            我想要的实际上是一个word+搜索引擎式的程序,不知道怎么才能用宏来实现它。

            • 家园 VBA不是宏

              VBA是一门语言,全称是Visual Basic for Applications,理论上来说,所有其他语言能干的事VBA都能干。“宏”是一段用VBA写的程序,但是这个程序在Office里可以“录制”下来而不是一上来就手写。“宏”程序录制完成后也可以修改。按快捷键只是调用了一段VBA程序,这段程序可以是录制的,也可以是完全手写的。

              在Word里的每一篇文章都是有结构的,比如标题,段落,目录,字体,作者,页数等信息(还可以添加自己需要的信息),这些信息可以用VBA直接提取出来,这些东西在普通的文本文档里通常是没有的;反过来用其他语言读写Word文档(包括这些结构信息)也是很困难的。而且按你的要求一边打字一边搜索这种模式使用VBA也比较方便。

              再次重申,VBA是很强大的,别的语言可以写搜索算法,VBA同样也可以写。

              • 家园 VBA编写太烦了

                VBA编写起来太笨拙了,当然我是自学了一小段,当时给两个哥们编毕业设计,最后都快要吐了,不过大多原因还是在于对象是文档处理,所以显得很琐碎。

                • 家园 这个主要应该是方法问题

                  和语言的关系应该不太大。比如现有文档结构不太适合您所需要做的处理,或者是算法不够好等等。设想一下,如果换一种语言,在同样的文档结构下算法没什么太大区别,那就不应该是语言的问题。其实各种主流语言的能力,在大多数情况下是差不多的(特大或特小的项目,或语言内置特殊部分除外)。

        • 家园 你可以学学OFFICE里面的宏(Marco)
        • 家园 等我学会了给你编~~~
分页树展主题 · 全看首页 上页
/ 14
下页 末页


有趣有益,互惠互利;开阔视野,博采众长。
虚拟的网络,真实的人。天南地北客,相逢皆朋友

Copyright © cchere 西西河