netbeans13控制台输出中文乱码?

Java如今的版本迭代速度简直不要太快,一不留神,就错过了好几个版本了。官方版本虽然已经更新到Java12了,但是就目前来说,大多数Java系统还是运行在Java8上的,剩下一部分历史遗留系统还跑在Java7,甚至Java6上。我刚学Java的时候,正好处于Java7版本末期,彼时已经有很多关于Java8新特性的风声,当时作为初学者,其实对此关注不多,只是依稀记得“lambda表达式”、“函数式编程”之类的,也不甚明白其中真意。真正大量应用Java8,大概是我工作一年之后的事情了,还记得当时是从IBM论坛上的一篇文章开始的。

前几天和一位大学同学聊天的时候,谈到了他们公司的一些问题,他们的系统是基于JDK7的版本,并且大部分员工不愿意升级版本,因为不愿意接受Java8的新特性。

我是觉得非常惊讶的,都快Java13了,你还不愿意了解Java8的新(旧)特性?因此有了这篇文章,本文将结合通俗易懂的代码介绍Java8的lambda和stream相关的新(旧)特性,从中体会函数式编程的思想。

我们可以简单认为lambda表达式就是匿名内部类的更简洁的语法糖。看下面两种线程创建方式,直观感受一下。

想要熟练使用lambda表达式,首先要了解函数式接口,那么什么是函数式接口呢?首先必须得是interface修饰的接口,然后接口有且只有一个待实现的方法。有个简单的方法可以区分函数式接口与普通接口,那就是在接口上添加@FunctionalInterface注解,如果不报错,那就是函数式接口,就可以使用lambda表达式来代替匿名内部类了。看下面几个例子,很显然,A和B都是函数式接口,而C没有抽象方法,D不是接口,所以都不能使用lambda表达式。

lambda表达式根据实现接口的方法参数、返回值、代码行数等,有几种不同的写法:

4. 只有一行代码的,可以省略大括号

有一点需要注意,lambda表达式和匿名内部类一样,都只能引用final修饰的外部的资源,虽然Java8中可以不用显示的声明变量为final的,但是在lambda表达式内部是不能修改的。

lambda表达式还有更加简便的写法,看下面代码,这个"::"符号是不是很熟悉啊?果然还是脱离不了C体系的影响

将上面的例子扩展一下,看下面的代码,体会一下函数式编程的思想。我们把函数作为参数,在真正调用compute方法的时候,才确定应该进行何种运算。

Java8内置了很多函数式接口,全部放在java.util.function包下面,这些接口已经能满足日常开发中大部分的需求了,这些函数接口主要分为以下几类:

Java8为集合框架添加了流式处理的功能,为我们提供了一种很方便的处理集合数据的方式。

Stream大体上可以分为两种操作:中间操作和终端操作,这里先不考虑中间操作状态问题。中间操作可以有多个,但是终端操作只能有一个。中间操作一般是一些对流元素的附加操作,这些操作不会在添加中间操作的时候立即生效,只有当终端操作被添加时,才会开始启动整个流。而且流是不可复用的,一旦流启动了,就不能再为这个流附加任何终端操作了。

流的创建方式大概有以下几种:

如果你熟悉spark或者flink的话,就会发现,中间操作其实和spark、flink中的算子是一样的,连命名都是一样的,流在调用中间操作的方法是,并不会立即执行这个操作,会等到调用终端操作时,才会执行,下面例子中都添加了一个toArray的终端操作,把流转换为一个数组。

1. filter操作,参数为Predicate,该操作会过滤掉数据流中断言结果为false的所有元素

4. peek操作,参数为Consumer,改操作会处理每个元素,但不会返回新的对象。

5. distinct操作,很显然这是一个去重操作,会根据每个元素的equals方法去重。

6. sorted操作,很显然这是个排序操作,如果使用无参数的sorted,则会先将元素转换成Comparable类型,如果不能转换会抛出异常。也可以传入一个比较器Comparator,然后会根据比较器的比较结果排序。

7. limit操作,参数是一个非负的long类型整数,该操作会截取流的前n个元素,如果参数n大于流的长度,就相当于什么都没做。

8. skip操作,参数是一个非负的long类型整数,该操作会跳过流的前n个元素,如果参数n大于流的长度,就会跳过全部元素。

每个流只能有一个终端操作,调用终端操作方法后,流才真正开始执行中间操作,经过多个中间操作的处理后,最终会在终端操作这里产生一个结果。

1. forEach操作,参数为Consumer,这相当于一个简单的遍历操作,会遍历处理过的流中的每个元素。

2. toArray操作,这个操作在上面的已经多次提到了,该操作根据中间操作的处理结果,生成一个新的数组

5. reduce是比较复杂的一个操作,它有三个重载方法,单参数、双参数和三参数的。主要用来做累计运算的,无论哪个重载方法都需要我们提供一个双参数的BiFunction,这个BiFunction的第一个参数表示前面所有元素的累计值,第二个参数表示当前元素的值,我们看几个例子。

6. max、min、count操作,这三个操作都比较简单,分别返回流中最大值、最小值和元素个数

7. collect操作,这个操作类似于toArray,不过这里是把流转换成Collection或者Map。一般这个操作结合着Collectors工具类使用。看下面几个简单的例子:

最后,我将上面介绍的一些操作结合起来,通过一个单词统计的例子,让大家更直观的感受流式处理的好处。

遗憾的是Java8的Stream并不支持分组和聚合操作,所以这里使用了toMap方法来统计单词的数量。

Java8的集合类提供了parallelStream方法用于获取一个并行流(底层是基于ForkJoin做的),一般不推荐这么做,数据规模较小时使用并行Stream反而不如串行来的高效,而数据规模很大的时候,单机的计算能力毕竟有限,我还是推荐使用更加强大的spark或者flink来做分布式计算。

至此,Java8关于lambda和Stream的特性就分析完毕了,当然Java8作为一个经典版本,肯定不止于此,Doug Lea大佬的并发包也在Java8版本更新了不少内容,提供了更加丰富多彩的并发工具,还有新的time包等等,这些都可以拿出来作为一个新的的话题讨论。期望之后的文章中能和大家继续分享相关内容。

}

好的软件可以极大提高工作效率,完成一些不可能完成工作。然而我们也常常为选择哪款软件而头疼,本次为大家推出的100款软件都是经过整理分类的,而且最重要的是100款软件都是开源免费且使用于Linux环境下,大部分都可以直接从官网上下载使用。如果你完全没有接触过以下我介绍的这100款软件,我只能说一句你OUT了!

  接下来将要介绍的100款开源应用程序,是我花了很多时间为大家整理的,这些软件对大家来说是很有用的。我希望通过这100款软件告诉那些潜在地Linux用户,Linux真的有很多,高效,高产,和大领域的免费开源软件。对于大部分Linux爱好者,通过这篇文章,可以为你提供一个满足你需求的软件资源,计算只是为了好玩,你也浏览一下。

       虽然这里列出了17款开源应用软件,在日常的生活工作中并不是每款都能用到。下表只是一个调节气氛的小测试,你根据自己的使用情况开测试看看自己是属于哪个级别。以下表格只是针对这17款软件的使用情况。

  Basket Note Pads是一款 KDE 下具有多种用途的记录软件,与其他一般的作笔记软件最大的区别是,它除了能够记录文字信息之外,更可以记录图片、声音、链接、文件、颜色等各种各样的数据。

  相信大家对于Firefox不陌生了,它是一款功能强大且适用于多种系统中。多达6000个Add-on供选择,可随心所欲添加至浏览器,实现您喜欢的很多功能,除此之外Firefox还添加了视频单放、在线音乐、图片拖存等有趣功能。

  Gnome do是为Gnone图形界面设计的一款功能强大、速度很快应用软件。作为GNOME桌面的远程控制工具,Gnome do允许用户快速搜索桌面或网页上的项目并有效地予以执行。虽然Gnome Do是由GNOME开发爱好者开发的,但是不只适用于GNOME桌面,还可用于 GNOME、KDE、Xfce 等桌面环境中。

  GNOME Do 与 Katapult 和 GNOME Launch Box 很相似,它能根据用户键入的内容进行自动匹配,从而快速打开系统中已有的程序、文件、书签等。

  Gnucash 是一套成熟度相当高的记帐软体,早期只能在 Linux 上使用,如今 Windows 的用户也能安装。系统功能丰富,包含收入支出记录,帐户管理,多国货币支援,税务管理,股票损益管理等等,使用系统前,必须了解各种专有名词的定义,包含资产(Assets),负债(Liabilities),净值(Equity)等等,才能顺利上手

  Incollector是一种收集各种信息(如便条,谈话记录,报价,序列号,源代码,网页地址,word)的应用程序。电脑上所有信息,都可以用来标记,所以你可以很容易地找到它们。它还有搜索文件夹,让你寻找的特定标准的条目。当然您还可以各种使用项,以一个外部文件。为您提供用于管理和组织您的信息很容易简单的解决方案。本工具使用需要安装 NET Framework 2.0

  Katapult 支持插件,这可以扩充其本身的功能。另外,你也可以定制 Katapult 的外观,以满足个性化的需求。Katapult 的最新版本为 0.3.2.1,其源码包可从下列地址获取。

  OpenOffice.org 是一套跨平台的办公室软件套件,能在 Windows、Linux、MacOS X (X11)、和 Solaris 等操作系统上执行。它与各个主要的办公室软件套件兼容。OpenOffice.org 是自由软件,任何人都可以免费下载、使用、及推广它。下列是 OpenOffice.org 的主要模块:文本文档,电子表格,演示文稿,公式,绘图,数据库

  所有的包有类似的外观,易于使用,如“样式”等“一次学会到处使用”的工具。OpenOffice.org 保持与您的电脑类似的外观——您一旦改变您的桌面,OpenOffice.org 也会相应改变。

  所有的组件文件可储存为 OpenDocument 格式(新的办公文档国际标准),这种基于 XML 的格式相比同类产品的格式,磁盘存储更合理,任何兼容 OpenDocument 标准的软件均可以访问您的数据。

  qOrganizer 是一款集日程、备忘录、笔记、todo list 为一身的管理软件。你可以在日程中设置字体、插入图片,打印任何一项日程,还可以在 todo list 中设置任务完成的百分比,可以让qOrganizer 把你的日程上传到 ftp,让大家共享。你还可以选择qOrganizer 如何存储你的日程,默认保存为文本文件,你还可以选择保存在 SQLite 或者 MySQL 数据库中,如果你需要保存在数据库中,要到 Setting 中的 Storing 中设置服务器的位置和帐户信息

  Rssowl是一个阅读RSS/RDF很好的工具。用JAVA SWT库写的界面。而且是开放源码的。支持n多种语言,而且还包含Blog工具,代理配置功能。对中文支持很好。

  RSSOwl一套采用Java编写的用于搜集符合RSS标准网站内容的工具,RSSOwl也可以称之为RSS阅读器。利用RSSOwl,用户可以方便的从各种复合RSS标准的资源获取信息。RSSOwl拥有人性化的用户接口,可以让用户将选中的信息以各种格式保存,浏览,共享。同时RSSOwl配置灵活,使用方便。

  Specto是一款桌面应用软件,它可以帮助你查看事件动态,比如某个网站更新、新邮件到达、文件/文件夹变动时,就会及时给你提醒。若是你因为要记住太多东西而伤神的话,那么就让Specto 这个好帮手来使你的大脑得到放松吧。

  Sunbird是一款免费的个人信息管理工具,Sunbird是一个重新设计的Mozilla Calendar组件.是一个基于Mozilla's XUL用户界面语言编写的跨平台日历软件。

  Task Coach是一款简单的开源个人事务管理软件,主要是针对个人代办事项。这个软件不同于同类型的软件如Outlook或者Lotus Notes等,因为这些软件都不具备合成事务的功能。因为一般来说,一件事务的办理都有几个相关步骤的,而Task Coach正是从这个特性出发而设计的,尤其适合对复杂事件的处理。

  目前,Task Coach 包括创建任务及子任务、设置任务类别、跟踪任务的完成进度、添加任务笔记、打印或输出任务、通知提醒等功能。使用 Task Coach 这个简单的 Todo 管理器,相信能让你的工作更加井井有条。

  Thunderbird 2提供了各种各样的方式让你来管理和显示你的文件夹,比如,可以通过这些方式你可以为你喜欢的、最近刚读取的、或者需要继续阅读的信息设置不同的显示方式。你还可以启动RSS,创建一个文件夹组来存放最热点和最有趣的新闻。除此之外,还允许你通过文件夹的上下翻按钮最大限度的管理信息显示效果,比传统的工具条更加好用。

  Thunderbird 2还允许你用“To Do”或者“Done”等描述将信息绑定起来,甚至还可以为你的特色需要创建自己的标签。通过查找可以将具有相同标签的邮件全部查找出来,这样十分便于邮件管理工作。

  这样能让每一页自动保存与其他页面之间的关联。每创建一个新的页面都可以简单的连接到其他页面上。每个页面都是分等级的结构,总的来说Zim 是一个本地维基系统,也就是一个本地的空白的属于你的维基百科。所见即所得编辑器很方便。

  · 每一个页面有一个创建时间,显示在标题下,可惜是乱码。这个问题就算设置了 Zim 的显示字体还是不能解决。可以手工删除,然后按下 Ctrl + D 插入纯数字时间。

      虽然这里列出了9款开发者应用软件,不同领域的开发者会选择不同的开发软件。下表只是一个调节气氛的小测试,你可以根据自己的使用情况开测试看看自己是属于哪个级别(只是针对这9款软件的使用情况)。

  Bugzilla是一个臭虫的数据库。它让用户报告软件的臭虫而且把它们转给合适的开发者。开发者能使用bugzilla保持一个要做的事情的优先表,还有时间表和跟踪相关性。不是所有的"bugs"都是臭虫。一些数据库中的内容是作为增强的请求(RFE)。一个RFE是一个严重级别字段被设为"enhancement"的"臭虫".人们常说"bug",实际上意思是Bugzilla中的记录,所以RFEs经常被称作bug。

  Eclipse是一种可扩展的开放源代码IDE。2001年11月,IBM公司捐出价值4,000万美元的源代码组建了Eclipse联盟,并由该联盟负责这种工具的后续开发。集成开发环境(IDE)经常将其应用范围限定在“开发、构建和调试”的周期之中。为了帮助集成开发环境(IDE)克服目前的局限性,业界厂商合作创建了Eclipse平台。Eclipse允许在同一IDE中集成来自不同供应商的工具,并实现了工具之间的互操作性,从而显著改变了项目工作流程,使开发者可以专注在实际的嵌入式目标上。

  使用Gambas,我们可以利用QT、GTK+等界面程序包和MySQL、PostgreSQL、Firebird、ODBC 、SQLite等数据库系统来设计程序。方便的测试KDE程序,更改程序的语言环境,创建网络程序,3D OpenGL程序以及CGI程序等。

  Geany是一个使用GTK+工具包编写、有集成开发环境(IDE)基本特性的文本编辑器。它的目标是提供一个小型快速、依赖软件包较少的集成开发环境。Geany支持许多种程序设计语言,是一个全功能的编辑器。

  Gobby是一款在单窗口中支持多文档和多用户聊天的免费的协作编辑器。它可以运行在微软Windows,Mac OS X,Linux和其他类unix平台。它使用GTK+ 2.6作为它的桌面包。

  jEdit是一款已维护了多年的,成熟的代码编辑器。在功能和易用性方面压倒许多昂贵的开发工具,jEdit在GNU公用许可证(GPL)下发布成了开源软件。jEdit是java编写,所以它可以运行在Mac OS X, OS/2, Unix, VMS Windows平台上,目前已经有了很多宏和插件,融合了融合VIM,EditPlus,Emacs等编辑器的优点于一身。

  NetBeans是一个全功能的开放源码Java IDE,可以帮助开发人员编写、编译、调试和部署Java应用,并将版本控制和XML编辑融入其众多功能之中。NetBeans 3.5.1可支持Java 2平台标准版(J2SE)应用的创建、采用JSP和Servlet的2层Web应用的创建,以及用于2层Web应用的API及软件的核心组的创建。此外,NetBeans 3.5.1还预装了一个Web服务器,即TomCat,从而免除了繁琐的配置和安装过程。所有这些都为Java开发人员创造了一个可扩展的开放源多平台的Java IDE,以支持他们在各自所选择的环境中从事开发工作,如Solaris、Linux、Windows或Macintosh。NetBeans 3.5.1也?面向JDK 1.4.0、1.4.1和1.4.2的应用开发提供支持。

  NetBeans目前最新版本为6.5,而且支持各种插件。利用各种插件,NetBeans可以用于非Java语言的开发。

  NetBeansIDE是一个为软件开发者提供的自由、开源的集成开发环境。您可以从中获得您所需要的所有工具,用Java、C/C++甚至是Ruby来创建专业的桌面应用程序、企业应用程序、web和移动应用程序。此IDE可以在多种平台上运行,包括Windows、Linux、MacOSX以及Solaris;它易于安装且非常方便使用。6.0发行版包含了重要的增强功能和新特性,包括完全重写的编辑器基础结构、对扩展语言的支持、新的生产率特性,以及一个能让您根据实际需求安装并配置IDE的简化安装过程。

  QUANTA是LINUX下的一个功能非常强大的HTML编辑器,功能非常全,老是有人说LINUX下缺乏好的HTML编辑器,COFFEECUP又是要注册的,如果你试过QUANTA,那你一定会喜欢上她。

  QUANTA介于所见即所得风格和HTML源代码之间,因为它需要输入HMTL代码但是同时有提供实时的预览,这中编辑方法有助于在提供友好的界面的同时让用户最大限度的把握HTML代码。QUANTA现在是kdewebdev的一个组件。

  SciTE(Scintilla Text Editor)是一个体积小巧的文本编辑器。虽然它没有像MS Office和OpenOffice那样功能强大但是体积也大的惊人的办公软件。它对文本以及源各种源文件却拥有强大的编辑能力,甚至可把它当作Dreamweaver来使用,因为它不仅有其他文本编辑器的语法高亮显示功能,它还支持40 种文件类型的语法高亮显示。光这点已经非常吸引人们的眼球,而且还可以达到自动补充完成以及输出窗口(对于编程的人来说很方便的)。这样也能省很多事情,尽管它的界面是简洁甚至说简陋的,但这并不妨碍它做为一个开发环境来使用。因为它默认情况下很多功能还没有展现,需要我们手动设置。 SciTE的标签窗口布局使你可以同时打开多个文件,在这件文件之间拷贝,执行搜索替换的操作。语法高亮显示的功能有助于编辑web页面和源代码。其它的像PDF导出,word completion,多级的撤消,代码树,全屏和分屏功能也是很有用的。在可设置性上,SciTE是一个相当复杂的软件,比较适合技术人员使用。

         虽然这里列出了23款系统软件,不同领域的开发者会选择不同的开发软件。下表只是一个调节气氛的小测试,你可以根据自己的使用情况开测试看看自己是属于哪个级别(只是针对这23款软件的使用情况)。

在普通级之上认识其他任意2款软件

在普通级之上认识并用过其他任意2款软件

在普通级之上认识并精通其他任意2款软件

  APTonCD是一款界面的工具,可以用来把用apt-get和apttitude命令从网上下载的程序包写到一个或多个CD、DVD中,制作一个可移动的代码库供其他的电脑使用。

  Beagle是一款帮你查找你电脑中个人信息文件的工具。

  从技术上来说,Beagle是一款实时提供你电脑文件信息索引的独立桌面服务。比如:文件在创建和修改时会进行索引,删除文件时索引也会被删除。邮件在收到之后就会被索引。聊天记录也会被索引,一次索引一条。

  Clam反病毒是一款开源(GPL协议)的UNIX平台反病毒工具包,专为邮件网关邮件检毒设计。它提供了多个实用程式包括灵活可扩展的多线程守护进程,命令行扫描器,高级数据库自动更新程序。

图:Conky监视界面

  Conky是一款正在开发的用于高度配置系统的轻量级系统监视进程。

图:EKiga视讯功能界面

  Ekiga(原名GnomeMeeting)是一款开源的基于GNOME桌面系统的VOIP和电视会议系统。同时支持H.323和SIP协议。它支持多种音频视频解码器,并且可以和其他的支持SIP协议的软件通信,如微软的NetMeeting。

  Endeavour Mark II是一款完整的文件管理套件,支持文件浏览、图片浏览、压缩、对象循环回收、多个文件和磁盘管理软件。

  GParted是一款用于创建、销毁、更改大小、移动、检查拷贝分区文件系统的工业级的软件包。在为新操作系统创建分区,整理磁盘空间,复制或镜像物理磁盘上的数据等方面十分好用。

  K3b是一款功能丰富的易用的CD烧制软件。

  支持磁带、磁盘、网络和DVD作为备份媒介,支持多文件系统,LVM,软硬件矩阵。

  使用开放标准和免费软件,读、写、发布电子书。

  OpenOffice原是Sun公司的一套商业级Office软件-StarOffice,经过Sun公司公开程序码之后,正式命名为OpenOffice发展计划,并由许许多多热心于自由软件的人士共同来维持。让大家能在MS OFFICE之外,还能有免费的Office可以使用。OpenOffice是个整合性的软件,里面包含了许许多多的工具,其功能绝对不比微软的MS Office还差,不但可以有Word一样的字处理,制作简单的图形,更有功能强大的图表功能,也能编写网页,还可以做出MS Office中很难处理的数学符号等等,支持了XML、微软的doc、Excel、ppt文件等格式

  OpenSSH是一款被网络技术人员依赖的免费SSH连接软件。telnet、rlogin和ftp用户意识到他们的密码在互联网上市不加密传输的。OpenSSH加密了所有的通信(包括密码)来有效的消除网络窃听,连接劫持和其它的攻击。此外,OpenSSH有提供安全通道技术,多种认证方式,以及支持全部的SHH版本协议。

  免费开源PDF文档编辑器。同时包含图形和命令行界面。

  Pidgin是一款支持多协议的即时通讯客户端,使你可以同时登陆多个IM账户。Pidgin支持的协议如下:

  PuTTY是一款实现了Telnet和SSH协议和虚拟终端技术的Win32和Unix平台免费软件。

  使用Desktop盘,你可以定制整个运行环境。比如,你可以添加或移除软件,更改默认界面(启动画面、主题、字体、壁纸等)添加桌面快捷方式等。

  使用Alternate和Server盘,你可以安装光盘中额外的工具软件。

  ROX是一个同GNOME、KDE和XFCE一样的桌面环境。它目的是把RISC OS一些好的特性引入Unix和Linux系统。

  一般来说,Unix用户的所有的操作都是围绕在文件系统的。该系统把所有的东西(普通文件、硬件设备、包含/proc文件系统的Linux下的进程)都看做为文件一样。

  然而,最近的桌面系统(如KED、GNOME)越来越像windows桌面系统,将文件系统放在底层,让用户通过界面来执行操作。现在的windows或unix桌面系统用户,经常不知道他们的程序装在哪里,他们的数据被存储在哪里。这就导致一种不受控制的错觉,以及文件系统工作方式的不甚理解。

  ROX桌面系统,是基于文件系统的,它的核心成为是ROX-Filer,一个除了提供文件管理还提供了解决上述问题的强大的图像文件管理软件。

  TrueCrypt是一款免费,开源的支持Windows Vista/XP/2000 and Linux的绿色虚拟加密磁盘工具,可以在硬盘上创建一个或多个虚拟磁盘,所有虚拟磁盘上的文件都被自动加密,需要通过密码来进行访问。

DES等,其他特性还包括支持FAT32和NTFS分区、隐藏卷标和热键启动。在使用TrueCrypt创建虚拟磁盘前,首先要选择一个系统尚未占用的盘符,例“X:”然后点击“CreateVolume”按扭进入创建虚拟磁盘步骤。TrueCrypt允许用户创建标准加密盘或是隐藏加密盘,在随后的向导步骤中依次指定创建加密盘文件的位置(点击“Select File”,然后输入一个任意文件名,例如“Newdisk”,点击“打开”)、加密算法、虚拟加密磁盘的大小,同时为加密盘设置密码,并选择文件系统。最后,点击“Format”格式化创建的虚拟磁盘并退出向导。 对于创建生成的虚拟磁盘文件,需要加载后方能使用。在TrueCrypt主界面下方点击“Select File”,找到前面创建生成的文件并打开,然后点击“Mount”,并输入正确的密码加载该虚拟磁盘。此时,TrueCrypt界面会显示新的X盘的一些信息,同时在“我的电脑”可以看到多出了一个“本地磁盘X”。将需要保护的文件全部移到X盘后,就可以关闭该虚拟磁盘了。使用右键单击系统托盘区上TrueCrypt的图标,选择“Dismount X:”,然后退出即可。 TrueCrypt除了创建虚拟磁盘外,没有什么多余的附加功能。不过,它允许用户选择不同的加密算法,这也可以说是软件的一个亮点。对于这款虚拟加密磁盘磁盘工具,迄今为止还没有传出可以通过特殊方法破解的消息,这也从侧面反映出这款软件具有相当不错的安全性。当然,暴力破解仍是不得不考虑的问题,因此密码的长度、复杂性也是这类软件是否足够安全的关键。

  VNC是虚拟网络计算的简称。它本质上是一款能够让用户在网络远端可以查看电脑系统的桌面环境的远程桌面系统显示软件。

  wine是一款优秀的Linu系统平台下的模拟器软件,用来将Windows系统下的软件转移到Linux系统下稳定运行,该软件更新频繁,日臻完善,可以运行许多大型Windows系统下的软件。

Unix及其衍生版本下。Wine可以工作在绝大多数的UNIX版本下,包括Linux、FreeBSD和 Solaris.。Wine不需要Microsoft Windows,因为它是一个百分之百免费代码组成的,可以选择的实现,但是它却可以随意地使用本地系统的DLLs,如果它们是可以被利用的话。Wine的发布是完全公开源代码的,并且是免费发行的。

   XFE是X文件浏览系统的简称,是一款基于X系统的类似微软IE的软件。虽然所有的文件管理软件提供了丰富的特性,智能的设计,但是它们大庞大了!如果你不是一个对控制平台上瘾的人,或者很少用桌面或老系统的人,资源丰富的文件管理软件并不合适你。

  特别的,自动文件管理软件基于桌面系统(KDE,Gnome,Xfce等),所以你需要安装很多你并不想安装的软件到你的系统中。 

  gzip (GNU zip)是一款设计为实用压缩的软件包。它主要的优势是免费的专利压缩算法和高质量的压缩。

10款Web开发应用软件

在普通级之上认识其他任意2款软件

在普通级之上认识并用过其他任意2款软件

在普通级之上认识并精通其他任意2款软件

图:Amaya界面截图

  Amaya是一种网页编辑器,是一个可以直接在网页上创建和更新文档的工具。在标准化的环境里,浏览、编辑和远程控制功能紧密结合。这个符合网络最初的设想,使网络成为一个互动的空间,而不仅仅只是单向出版媒介的空间。

  在1996年,为了展现出一个全功能的web客户端网络技术,W3C开始了对Amaya 研究工作。开发Amaya的主要目的是为了提供一个尽可能多地整合W3C技术的框架。基于这个整合的单向一致的环境来展示技术。

  最初的Amaya是一个HTML + CSS 样式的编辑器。之后扩大到支持XML 及XML 的适用程序比如XHTML 系列,MathML 和SVG。允许在复合文档里同时编辑这些词汇。

  Amaya包含了一个基于资源描述框架( RDF)、Xlink和XPointer的协同注释应用程序。

   Aptana Studio是基于Ajax开发环境下的一款免费、开源软件。全世界有几百万的开发者都在下载该软件,他们同样困惑为什么Aptana Studio在任何地方都能成为Web应用的主流。其主要原因是Aptana Studio能够为PHP、Ruby、Adobe AIR甚至是苹果的iPhone的开发者提供免得的插件。

  当然Aptana Studio还为基于Jaxer平台下的Ajax应用程序开发者提供了丰富的支持。事实上,在Aptana Studio1.1版本中,Jaxer已经集成了全部条件,这种基于端到端的Ajax应用程序的开发不要求未来提供更多的支持或者启动更多的服务设施。只要创建一个新的HTML文档,你就可以使用丰富的数据库、网络访问通道等来创建完整的用户/服务应用。对于Web2.0应用开发来说,它可以说是最全面,最强大的开发工具了

     Bluefish是一款功能强大的Web代码文本编辑器,该软件可以选择多种方式来写网页,其中包括Scripts和程序代码等方式。Bluefish支持多种程序设计语言,它主要关注于灵活交互式网页的编写。

  FontForge 的使用界面已经被翻译成:英文、俄文、日文、法文、意大利文、西班牙文。

    gFTP是一款免费的用Gtk开发的多线程FTP客户端工具。他有一个很好的功能是:支持FXP文件传输(远距离的两个服务器之间的文件传输)。它与Microsoft Windows下运行的CuteFTP等FTP工具极为类似。

     KompoZer是一款完善的Web制作系统,包括Web文件管理功能,支持简单的支持所见即所得网页编辑功能。

  KompoZer使用起来十分简单,让没有HTML和Web代码基础的用户可以根据自己的想法设计出专业、吸引人的页面,

  Nvu/KompoZer作为网页编辑器,具备了通常html编辑的大部分功能以下就列出了其中的五点功能:

  - 支持所见即所得(WYSIWYG),我们在制作网页时,更加的直观化,编辑网页就如同打字一样容易。

  - 内建一个FTP Client,让我们可以很轻易的把编辑好的文件发布到服务器上。登录FTP Server后,还支持在线实时更改页面。

  - 可靠的HTML原始码,让由Nvu所创建出来的网页,可以在当前多数的浏览器上正常运作。制作网页时,可以使用所见即所得模式或HTML原始码编辑模式。

  - Tab功能:可以让我们很迅速的在多个页签间切换,并且编辑这些网页。

  - 支持表单、表格、layer以及网页模版。

  Kruler是KDE中一款制定屏幕分辨率规则(像素规则)和颜色测量的工具

   SeaMonkey是一个自由的开放原始码以及跨平台的网络套件,并且由Mozilla基金会建构,之后转由旗下的SeaMonkey专案领导团体开发。

  SeaMonkey原来是Mozilla基金会内部一个负责管理工作的小组的名称。但是从现在起,SeaMonkey有了新的含义:SeaMonkey是一个社区项目,它致力于在从过去的“Mozilla浏览器套件”中分离出来的代码的基础上,开发可供使用的浏览器套件。SeaMonkey将替代 Mozilla基金会原先的“Mozilla浏览器套件”的开发。——从用户角度来说,它将继承Mozilla浏览器套件的大部分功能,包括一个网页浏览器、一个高级邮件程序、一个IRC聊天客户端和一个HTML编辑器。SeaMonkey将继承Mozilla浏览器套件的衣钵,成为新一代的网络集成工具。

 Wink 是一款非常优秀的免费录屏软件,尤其适合制作计算机操作教程。Wink免费、小巧、可同期或事后加入声音、可加入暂停及跳转按钮、添加注释,并且生成的 flash 文件比其他软件小很多。非常适合教师使用。

  很多人都有这种经验,那就是在安装一个Apache Web服务器上挺麻烦的,更别说是想在服务器上增加MySQL、PHP、和Perl了。XAMPP是一个快速搭建基于Apache、MySQL、PHP、Perl的编程调试环境的一个安装套件包。你只需要下载Xampp、解压缩和启动几个步骤,没有复杂的安装过程。

14款图形设计软件(2D)

      虽然这里列出了14款图形设计软件(2D)软件,不同领域的开发者会选择不同的开发软件。下表只是一个调节气氛的小测试,你可以根据自己的使用情况开测试看看自己是属于哪个级别(只是针对这14款软件的使用情况)。

在普通级之上认识其他任意2款软件

在普通级之上认识并用过其他任意2款软件

在普通级之上认识并精通其他任意2款软件

  Cenon是一款特殊类型的绘图工具。它通过模块化的图形核心,提供了大量的扩展应用。Cenon是开源的并且免费的软件,并且使用于各种平台上。

  GIMPshop是一款免费开源的GNU图形处理软件(GIMP)的修正版,打算复制Adobe Photoshop的操作效果。它的主要目的是让那些用惯Photoshop的人用GIMP也很顺手。

  软件保留了GIMP在多特性列表和可定制性方面的优势,并且定位修改了有关程序界面中的公认的缺陷:GIMPshop修改了程序的菜单结构,在外形结构上更像Photoshop,同时修改了程序中很多术语,并且在Windows版本中,使用了一款名为“Deweirdifier”的插件,该插件可以使GIMPshop的窗口像Windows的图形处理系统MDI一样,通过多窗口呈现图形。然而GIMPshop并不支持Photoshop插件,所有GIMP的插件、过滤器、画笔等GIMPshop都是可用的。

  由于更改了界面,许多Photoshop教程就可以不加改动的用在GIMPshop上,大多数用户可以很快的适应GIMPshop软件。

Mihal的Enblend和Enfuse的一款图形化界面的前端程序。允许拼接几张在同一地点拍摄的互有重叠的照片,使用控制点来拼合照片,混合后输出一张更大幅面的图像。hugin支持自动创建控制点,带预览窗口的优化图像投影方式,这样可以方便用户查看处理后的全景图是否可接受。若用户接受,则程序通过拼接投影输出全景图。

  Inkscape是一款开源且功能类似Illustrator、CorelDraw 、Xara X的矢量图形编辑器,它使用W3C标准对称矢量图形文件格式。

  Inkscape支持许多高级SVG特性(标示、复制、alpha混合等等),十分严谨的流线型界面设计。它具有易于编辑节点,执行复杂的路径操作,微调位图等功能。该软件打算通过开放的、面向社区的开发模式,共同维护热点用户和开发者社区。

  KoverArtist是一款为CD/DVD盘或箱子创作封面的程序。它突出用途就是通过简单的鼠标点击就可以设计出得体好看的封面。

  除此之外,还支持联机修改封面,避免占用大量磁盘空间。

  KToon是一款由动画家(Toonka电影)设计的用于卡通工厂的2D卡通绘制工具包。本工程使用G++,OpenGL和QT作为开发资源,使用KDevelop开发平台,遵从GPL协议。

  Krita是一款为KOffice开发的绘画和图像编辑程序。Krita从1.4版开始成为KOffice的一部分。它提供了包括有趣易用的绘画指导功能(以前使用喷枪画一条直线是一件很困难的事情)和对16位图像的高端特性支持,CMYK,L*a*b,以及对EXR、HDR图像的读取。

  MyPaint是一款快速绘画涂鸦工具。它支持压力敏感画板,并且使用简单的刷子收集器。因为需要着重于刷子的力学(改变速度、压力和方向),创件自己的刷子需要很复杂的界面。画布的大小没有限制,支持回退功能,但不支持图层。

  · 把你经常用到的画图工具图标放到你屏幕上来实现快速访问。

  · 使用风格格式化工具简单的格式化你所有图片的风格。

  · 操纵对象在2D或3D图形中旋转;3D控制器提供了球体、圆环、立方体等模型供你使用。

  · 排列对象:组合,解开,重新组合,编辑组合后的对象。精致的透视图效果让你可以使用自己的纹理、灯光效果、透明度、远景等效果来创建逼真的图片。

  · 敏捷的连接器可以让你迅速的绘制流程图、组织图、网络图等图形。定义你自己的链接器的粘合点。

  · 当你画线时,尺寸线会自动的计算和显示线性标注。

  · 使用美术馆来实现剪切艺术,创造自己独有的艺术图,把它加到画廊中。

  · 将图片图为OpenDocument的新的国际标准格式。这个基于XML的格式意味着你不能将它绑定于DRAW。你需要用其他的OpenDocument兼容软件来打开它。

  · 使用DRAW的免费功能来创建你的作品的Flash版本。

  用来浏览、创建、编辑和重新映射图像的软件:

  PTStitcher:高质量,简单易用,所有格式拼接软件。

  Panorama工具:用于全景图片生成、编辑、重映像的Photoshop插件。

  PTViewer:高质量球星阅览器,独一无二,并且为java编写适合所有平台。

  Pixelize能够利用小比例图片尽可能的复制另一张图。

  Pixelize将你想分割或复制的图片分割为许多小的矩形网格。每一个网格经过分析后会被大图片数据库中的一张图片替换。

  Pixelize尽量为每一个区域选择最为合适的图片。

  Pixelize图片数据库越庞大,工作效果就会越好。只要数据库中有1000张图片时,Pixelize就可以正常工作。

  在现代化和用户友好的界面下,Scribus提供了专业的印刷排版特性,如CMYK专业印刷颜色,分色,ICC颜色管理以及通用的PDF生成。

  Skencil是一款免费的交互式矢量画图软件。它提供了灵活和强大的工具来实现插图、图标和其他功能,运行在GNU/Linux和其他unix操作系统上。

  Skencil一个独一无二的特性是,它是利用高级的解释型语言python来实现,Python是强大的、面向对象的易用的语言。

  Synfig是一款为降低人员和资源消耗的强大的工业级的2D矢量动画软件包。当前市场上有很多可以有效制作2D动画的软件,但是我们还没有发现一款软件能够实现我们所有需要的软件。

  传统的2D动画制作十分昂贵,因为每一帧图画都需要手工绘制。即使以来与现在的数字笔墨以及画图软件,绘制过程还是需要依赖于手工。这项费劲的任务称作“渐变动画”。

  我们动画技术消除了人工渐变动画任务,卡通绘制人员不必绘制每一帧就可以实现平滑的流体运动。

  这些可以让你在使用尽量少的人员的情况下产出高质量的2D动画。

  速度快,使用灵活。

  提供多块强大的画图工具。

  提供简洁的用户界面。少数的对话框,调色板和菜单等。

  可建立大幅的图片。

  包含了大量的资料、教程、视频、密集,以及一个热诚快速成长的用户社区。

 9款图形设计软件(3D)

    虽然这里列出了9款图形设计软件(3D)软件,不同领域的开发者会选择不同的开发软件。下表只是一个调节气氛的小测试,你可以根据自己的使用情况开测试看看自己是属于哪个级别(只是针对这9款软件的使用情况)。

在普通级之上认识其他任意2款软件

在普通级之上认识并用过其他任意2款软件

在普通级之上认识并精通其他任意2款软件

  Art of Illusion是一款免费开源的3D模型工具软件。完全使用java编写,可以运行在J2SE 1.4或更高平台的java虚拟机上。

  这款软件的功能可以和许多商业软件品媲美。比如,该软件功能的精华部分有基于立体模块化的细分表面,骨骼动画,材质设计语言。

  Blender是一款开源的3D内容创建软件,可以用在所有基于GNU GPL协议的操作系统之上。该软件具有模型、阴影、动画、着色、复合、交互式3D等功能。

  Crystal Space是一款用在游戏中的实时3D跨平台的软件工具集。

  FreeWRL是一个Linux环境下的VRML浏览器,完全支持VRML97:包括Perl脚本、Java、Javascript和EAI。它主要用Perl编写,用C语言库编写界面,使用OpenGL。该软件具有以下特性:

  · 被Web3d组织评为交互软件简介。

  · 运行在OSX或Linux,可以运行在浏览器中或者单独运行。

  · 线性重画以及支持MIDI声音交互。

  · 同样适用MIDI、EAI、SAI等外部接口的程序通信。

  G3DViewer是一款基于GTK+的3D文件查看软件,支持文件类型如下:

  K3DSurf具有以下功能:

  · 使用鼠标事件(右键:旋转,中键:调动,左键:缩放)形象化的交互操作方式。

  · 引入时间变量概念,支持实时动画(旋转变形)和屏幕图像变换。动画和图像变换可以由CPU的使用率和时间节拍控制。

  · 使用在屏幕拉扯可以截取屏幕图像。

  · 支持创建视频场景。

  · 创建可以描述数据模型的通用文件。

  Povscript:网络上最好的绘图工具,并且免费。

  VRML2:当前流行浏览器软件插件。

  对许多的模型工具来说,POV-Ray只是一个带有很多局限性和固有脚本语言的渲染引擎。但KPovModeler通过将POV-Ray编译为图形树来使用POV-Ray的所有的特性。

  绝大多数的POV-Ray脚本语言都可以在KPovModeler中使用。说绝大多数是因为有些变量,循环指令和一些宏操作时不能直接使用的。另外,KPovModeler允许你包含一些Raw POV-Ray工具脚本代码。这些代码会被POV-Ray直接执行。

  通过图形树管理场景。

  可以通过拖拽控制点或者修改属性栏来修改图形。

  使用OpenGL做线性框实现灵活的场景。

  复制、粘贴和拖拽线条。操作对象树代码。

  场景透视图和质地的预览。

  支持所有的pov ray对象。

  摄影机的所有摄像模式。

  PovRay是一款优秀的视觉残留光线跟踪器,也是高质量的免费3D图形软件。可以用在Windows、Mac OS/Mac OS X以及Linux平台上,源代码开放。

  它可以读VRML97文件,并且可以更改场景图。

  不同于其他的高端工具,它使用基于VRML97标准的轻量级模型。

        虽然这里列出了8款视频制作软件软件,不同领域的开发者会选择不同的开发软件。下表只是一个调节气氛的小测试,你可以根据自己的使用情况开测试看看自己是属于哪个级别(只是针对这8款软件的使用情况)。

在普通级之上认识其他任意2款软件

在普通级之上认识并用过其他任意2款软件

在普通级之上认识并精通其他任意2款软件

  Avidemux是一款用作简单的剪辑、过滤、编码任务的免费视频编辑软件。它使用多个解码器支持包括AVI、DVD兼容的MPEG、MP4和ASF文件格式。任务可以使用工程,任务队列,以及强大的脚本来实现自动化。

  Cinelerra软件主要来做三件事情:捕捉、影像合成、在样本精度下编辑影视频。它可以无缝的将音频、视频以及图片结合到一起。

  如果你想利用图像合成和编辑软件在效率最高的unix系统上完成图像编辑,尝试Cinelerra软件的时候到了。

  CinePaint软件用在故事片和摄影的润饰上。它可以打开诸如DPX、16位TIFF、OpenEXR和传统的JPEG、PNG格式的高保真图片。它的动画书功能可以使图片按序列的播放。它支持8位、16位、32位颜色通道,HDR和CMS。

  CinePaint用在电影的后期修整上,如错误视频的删除、颜色修复,背景的修改,绘制3D材质模型。它被用在了很多的电影特性上。

  在剧照拍摄中,CinePaint能够导入等价的HDR曝光。拥有高质量的16位颜色通道。CinePaint的动态范围对于单通道图片的剧照拍摄是重要的。

  使用混音设备制作音乐。

  多种解决方案,多种文件格式。


图:Kino视频制作软件

  Kino是一款用于GNU/Linux平台的非线性DV编辑软件。它集成了IEEE-1394、VTR控制、摄像倒放等特性。它可以将视频以DV(类型1和类型2两种DV格式)或AVI的格式存放在磁盘上。

  你可以导入多段视频剪辑,剪切和复制部分的视频和音频,并且将之保存到编辑决策列表。大多数的编辑和导航按钮都有等价的快捷键对应。并且,Kino可以合成导出如下的视频格式:WAV、MP3、Ogg、MPEG-1、MPEG-2、MPEG-4。静态图形的导入和导出需要用到gdk-pixbuf,支持BMG、GIF、JPEG、PNG、PPM、SVG、Targa、TIFF、XPM等图片格式。MP3需要lame软件。Ogg


图:LiVES视频制作软件截图

  LiVES将实时视频编辑和非线性编辑结合到一款软件中。它可以让你不用再考虑格式、帧大小等特性来编辑和生成视频。LiVES软件十分灵活,可以和图像编辑器、视频编辑器配置使用。你可以实时录制你的视频,之后再把它编辑为一个新的视频。

  recordMyDesktop是一款GNU/linux平台上的屏幕记录软件,可将你当前的 Linux 桌面录制成视频与他人分享。其功能主要有:可录制全屏、窗口,也可以录制选择的区域;除了能够录制视频的基本功能之外,还能够录制音频;有一些录制的参数可以调整;生成的视频格式为 .ogg。如果需求不是很大的话,不妨试一试这个小工具。

  软件本身可以分为两部分;一个简单命令行来实现基本的捕捉编码工作,一个界面程序将程序以实用的方式展示出来。

  使用Slideshow Creator和dvd-slideshow可以将图片转换为高质量的包含很多特效的富文本。添加一些悦耳的音乐会更好。

    虽然这里列出了10款音频制作软件软件,不同领域的开发者会选择不同的开发软件。下表只是一个调节气氛的小测试,你可以根据自己的使用情况开测试看看自己是属于哪个级别(只是针对这10款软件的使用情况)。

在普通级之上认识其他任意2款软件

在普通级之上认识并用过其他任意2款软件

在普通级之上认识并精通其他任意2款软件

  Ardour是一款数字音频工作站。你可以用它来记录,编辑,混合多媒体音频。你可以制作自己的CD,混合视频声音,或者根据自己的想法来配置声音和视频。

  Ardour的功能包括:多重道刻录,多通道录音,非破坏性编辑,无限撤销/重做,全自动化的支持,一个强大的调音台,无限轨道/总线/插件,时间码同步和硬件控制从表面像麦 基控制世界。如果您一直在寻找一种工具类似ProTools , Nuendo , Pyramix ,或Sequoia,您可能会发现它。

  Audacity是一款免费、很容易使用的音频编辑和刻录软件,主要用于Windows,Mac OS X,GNU/Linux和其他一些操作系统上。它具有以下功能:

  · 将磁带格式,刻录成数字编码格式或者CDs

  · 导入与导出 WAV、MP3、Ogg Vorbis或者其他的声音文件格式

  · 剪切,复制,连接或者混合不同声音在一起。

  · 改变声音的速度或者频率等等。

  Grip是基于Gnome桌面下的一款CD-player和CD-ripper。它有内置的CD翻录功能,还可以使用外部视频抓取(比如,cdda2wav)。它为MP3(和其他音频格式)编码器提供一个自动播放前端,让你轻松地将磁盘格式转换为MP3。在光盘数据库server.Grip中的支持下可以进行网络光盘信息查找检索。Grip和数字DJ一起可以提供一个统一的“计算机化”版的音乐搜集

  Hydrogen是基于GNU/Linux下的一款鼓乐机器。该软件的主要目标是带来专业而且简单和直观的鼓乐节目

  Jokosher是一个简单但强大的多媒体栈音频软件。它提供完整的刻录,编辑,混合和导出音频功能,以及一些特殊功能设计。

  Jokosher开发人员考虑重新设计每级音频制作,建立更简单的使用方式。

  LMMS是一款自由的音乐软件包,其目标是成为像FL Studio(但是FL Studio商业软件)那样流行的音频制作软件。编它可用于Linux、Mac OS X和Microsoft Windows操作系统。音乐可以来自合成声音、改编的样本和MIDI键盘上的演奏。它结合跟踪、音序器和合成器的特点 。支持LADSPA和VST插件,是一个自由的数字音频工作站软体。


图:MusE音频制作软件界面截图

  MusE是最初是由Werner Schweer设计的一款MIDI/Audio音序制作软件,具有刻录编辑功能,现在由MusE开发团队接管。MusE的目标是实现Linux下的多声道虚拟音频制作,它是基于GNU公共认证下发布的。你可以使用多种声卡来访问外观迷你的设备,并通过MusE来记录或者播放声音。


图:Rosegarden音频制作软件界面截图

  是 Linux 系统上一款非常专业的音乐创作及编辑工具。使用Rosegarden,你可以完成诸如音频录制与编辑、混音及添加音效、MIDI 音序编辑、以及乐谱编辑等音乐方面的处理任务。支持Mandriva、Debian、Ubuntu、SuSE、PCLinuxOS 等 Linux 系统,可通过其自带的包管理工具直接安装。具体功能参考:。

能够读取/写入许多格式所带的标签,在转换文件时你可以保留它们。另外,soundKonverter 还包括一个 Amarok 脚本,使你能够转换媒体设备中的音频文件。

  StreamRipper 能够将网上的MP3流媒体保存到硬盘中,特别适合录制网络MP3广播。能够自动感知流媒体,并自动开始、停止录制以及进行适当的分割。该软件具有简洁的界面,可以作为单独的软件运行。

}

我要回帖

更多关于 tomcat控制台输出乱码 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信