语言 仅22B 精通80 最强开源编程大模型一夜易主

Scan me!

用微信扫码二维码

分享至好友和朋友圈

开源代码大模型的王座,再次易主!

来自素有“欧洲OpenAI”之称的Mistral,用22B参数量表现超越了70B的Code Llama。

模型名为Codestral,将代码的英文Code与公司名结合而成。

在80多种编程语言上进行过训练后,Codestral用更少的参数实现了更高的性能,窗口长度也达到了32k,相比之前一众4k、8k的模型大幅增加。

而且已经有人表示,GPT-4o和Claude3-Opus都失败的代码编辑任务,被Codestral成功解决了。

于是有网友直言,Codestral的推出,直接改写了多语言代码模型的游戏规则。

另一方面,还有网友直接@了知名本地大模型框架Ollama,希望能够支持Codestral,结果Ollama这边也迅速响应,在请求发出后1个小时就增加了对Codestral的支持。

那么,Codestral在测试中都取得了哪些成绩呢?

开源编程模型的新王者

Codestral的参数量为22B,支持32k的上下文窗口。

在开发过程中,研究人员使用了80多种编程语言的代码数据对Codestral进行了训练。

其中既包括Python、Java、C++和Bash等这些流行语言,也有像Fortran、COBOL这样的古早语言。

值得一提的是,其中的COBOL诞生于1959年,但至今全球仍有43%的银行系统依赖它,然而另一方面,现在会用的人数却寥寥无几,而且普遍年事已高。

AI工具对COBOL的支持,或许将成为解决COBOL人才极度紧缺问题的一种途径。

说回到Codestral,虽然参数量只有不到三分之一,但测评成绩已经大幅超过了70B的Code Llama。

对于Python语言,研发团队使用了HumanEval(pass@1)和MBPP评估了Codestral的Python代码生成能力,用CruxEval来评估输出预测,以及用RepoBench评估Codestral在远程存储库中的代码补全能力。

结果,Codestral在其中的三项测试中都取得了最佳成绩,并对Llama 3和Code Llama形成了全面超越。

数据库方面,在针对SQL的Spider测试中,Codestral的表现也与通用模型Llama3十分接近。

对于其他一些编程语言,Codestral和通用版Llama3各有胜负,平均成绩则小幅超过了Llama3,但相对于Code Llama的优势是十分明显的。

另外,Codestral还支持FIM(fill-in-the-middle),也就是可以对现有代码进行填充补全。

在Python、JS和Java三种语言当中,Codestral都取得了接近或超过90%的HumanEvalFIM评分,平均成绩91.6%,超过了参数量更大的DeepSeek Coder 33B。

速度方面,使用在线对话版本,只要三秒钟就能构建出一个带有顶部banner和侧边栏的HTML框架。

不仅性能表现优异,形式上,Codestral支持的使用方式也多种多样。

Mistral已经把模型权重上传到了HuggingFace,有条件的可以自行下载部署。

以及LangChain、LlamaIndex,还有开头提到的Ollama等这些大模型框架,以及Mistral自家的开发者平台La Plateforme当中都已经支持使用Codestral。

专属API也正在赶来的路上,正在进行为期8周的测试,期间开发者可以免费使用。

如果还是不会部署的话,也可以到Mistral的在线对话平台Le Chat当中,直接使用网页进行对话。

当然,开发者更关心的,可能还是能不能集成到IDE中使用。

对此,官方暂未推出原生的IDE支持,不过已经有Continue.dev、Tabnine等第三方插件支持了Codestral,可以通过这些插件在VSCode和JetBrains系列IDE中使用。

One More Thing

与Codestral一同官宣的,还有Mistral全新的“非生产”(Non-Production)许可协议,简称MNPL。

本次发布的CodeStral使用的许可协议也正是MNPL,按照规定仅可用于研究目的,不能进行商用。

并且,这份协议对“非商用”的界定也十分严格,即使仅将其用于公司内部事务也不被允许。

有开源作者就此吐槽,他们用我代码的时候从未征求我的意见,为什么还反过来要求我遵守他们的规定,这实在是太荒谬了。

而Mistral这边的解释则是,如果放开商业用途,可能无法得到使用者对模型研发的贡献。

官方同时也表示,虽然Codestral不能商用,但并不意味着之后的其他开源模型也是如此,同时明确表示后续会继续发布基于Apache 2.0协议的其他模型。

参考链接:[1]https://mistral.ai/news/codestral/[2]https://x.com/GuillaumeLample/status/1795820710750744839[3]https://www.theverge.com/2024/5/29/24166334/mistral-debuts-a-coding-assistant-called-codestral

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

网易跟贴

注册 手机发跟贴 登录并发贴

网友评论仅供其表达个人看法,并不表明网易立场。

好人好事越多越好

(马到成功)建议尽快量化融券T+2交易限制做空,基金有盈利才收管理费,减持股票只可回购注销促进分红,超募直接回购注销二级市场股票,试行涨幅20%跌幅10%引导长期投资,买卖1手改为10股,不限投资门槛,连续涨跌停不停牌只控制账户交易千股,事半功倍!三代内须异地不同系统公职降低风险,养老金挂钩当地最低工资倍数限高保低,累计亿元征收遗产税和离境税缩小差距,纠正年龄和学历偏见及过长加班并自愿延退,可以有效减少过度内卷忧虑。限制单期个人累计中奖额度50万元,对外公布就无后顾之忧,提高中奖率,有效促进消费!AI智能帮助先快发展电场消融和干细胞T免疫及机器人

人工智能的用处生产制造灵敏杀人,样样优武器:导弹,导弹防御系统,大无人机扔导弹,小无人机绑手榴弹(3000元替你上前线,也就一个月工资),战斗机,机器人,等武器终究自动化,像反导手动根本忙不过来。流水线:更智能。更高效。人工智能应用之灵魂永生,可以进行长达1亿年时间跨度的星系群之间的飞行超级大脑的建立,解决各种生活问题全智能化时代的到来,

对灵魂的窥探意识的本质就是自我时时好坏感知,然后趋利避害人判断好坏的依据就是感受。如:好的感受,就像打了鸡血,人很爽。坏的感受,就像累,苦,饿,的感受。感受好,那趋利避害。感受不好,那趋利避害。感受就是系统释放的好坏信号加好坏的原因意识的自主性小的时候靠本能行事,成长初期本能(系统)是你的军师,遇事系统告诉你好坏及缘由,加激素赏罚,如:多巴胺。没认知时,你被系统牵着鼻子走,系统说的好坏,就是你认为的好坏,然后趋利避害。趋利避害是天性,是预设好坏逻辑,只要认定是好,是害,就会产生动机,然后趋利避害。当逆趋利避害,系统就会出来说不好。但有认知后,靠想法行事,靠认知行事,靠真的好(真理)行事,系统说的好坏只是警报,只是好坏信号新认知之信息对错辨别动机判断,诚恳的,那对。眼见为实的,那对。符合经验,符合逻辑的那对。大家多怎么说,那对。说的有理有据的有详细,那对。验证过的教材,那对预设好坏逻辑,带来了什么可以让社会向好的发展,向文明发展,向美发展,向智慧发展,是对好坏评判的标准(好的维度分很多种,如时间空间数量大小美丑智笨爱善恶情感利己利国和对比)美就是一种智慧的体现(如花瓶,跑车)本能就是先天会的。人刚出生,没有对好的概念。但脑子里有预设好坏逻辑(自己看不到)。但遇到事件后,本能会产生好坏感受。回顾感知自己因果反应,就会知道背后逻辑对大脑的一点理解左脑因果逻辑,右脑3D感知因万事万物多有他的因果逻辑。因果可分为:以自己想法为目的的因果判断,本能上的因果反应,事件因果的判断,属性的因果判断,时间上的因果关系。搜索经验并关联撮合(联想),符合因果,那判断对思考:因果关系经历多,就能进行因果思考。物体远动见多了,就能回忆进行想象因为一个因果逻辑,一个3D感知,就能对这宇宙产生认知一个逻辑想象,一个三维想象就能产生创造设置以上逻辑,机器人不光有了人的心,也有了人的智影响蒸汽机,产生了智能(连续动力),数控(设计程序,可以作业全自动),人工智能,让一切设备拥有了智能。应用无处不在。人类将拥有一个强大的助手。彻底解放双手AI对人的本能和情感投其所好,市场将一片大好服务人类是暂时的,人类终将永生

bmpfhjhmzlkc

亲测2080TI22G目前流畅可用

网易来自火星手机网友

人工智能的用处生产制造灵敏杀人,样样优武器:导弹,导弹防御系统,大无人机扔导弹,小无人机绑手榴弹(3000元替你上前线,也就一个月工资),战斗机,机器人,等武器终究自动化,像反导手动根本忙不过来。流水线:更智能。更高效。人工智能应用之灵魂永生,可以进行长达1亿年时间跨度的星系群之间的飞行超级大脑的建立,解决各种生活问题全智能化时代的到来,

物极必反,最终会想沙丘一样,回到完全不依赖机器智能的时代

目前没有跟贴,欢迎你发表观点

用硅模拟人脑,进度条走到了1/80

返回网易首页 下载网易新闻客户端

学java能做什么工作

在现实社会中有很多地方使用到了Java,从电子商务网站到Android apps,从科学应用到金融产品,例如电子交易系统,从类似Minecraft的游戏再到Eclipse,Netbeans和IntelliJ的桌面应用,从开源的资源库J2MEapps等等。下面带你一起详细了解Java的应用领域。

1、安卓Apps

如果你想知道Java应用在哪里,你离答案并不远。打开你的安卓手机或者任何的App,它们完全是用有着谷歌AndroidAPI的Java编程语言编写的,这个API和JDK非常相似。前几年安卓刚开始起步而到今日已经很多Java程序员是安卓App的开发者。

2、在金融服务行业的服务器应用

Java在金融服务业有着很大应用。很多的全球性投资银行例如GoldmanSachs(高盛投资公司),Citigroup(花旗集团),Barclays(巴克莱银行),StandardCharted(英国渣打银行)和一些其他银行都用Java编写前台和后台的电子交易系统,结算、信息确认系统,数据处理项目和以及其他的项目。

Java被运用于编写服务端应用,但大多数没有前端,都是从一个服务端(上一级)接收数据,处理数据后发向其他的处理系统(下一级)。JavaSwing由于能开发出图形用户界面的客户端供交易者使用而备受欢迎,但是现在C#正在快速地取代Swing的市场,这让Swing倍有压力。

3、网站应用

Java同样也在电子商务和网站开发上有着广泛的运用。你可以运用很多RESTfull架构,这些架构是用SpringMVC,Struts2.0和类似的框架开发出来的。甚至简单的Servlet,JSP和Struts在各种政府项目也是备受欢迎,许多政府,医疗,保险,教育,国防和其他部门的网站都是建立在Java之上的。

4、软件工具

很多有用的软件和开发工具都是运用Java编写和开发的,例如Ecilpse,InetelliJIdea和NetbansIDE.。我认为这些都是经常使用的用Java编写的桌面应用程序。

就如上面所说,Swing曾经在图形用户界面的客户端开发非常流行,它们大多数应用在金融服务领域以及投资银行。虽然现在JavaFx正在逐渐地流行起来,但仍然无法替代Swing,而且C#已经在大部分金融领域中代替了Swing。

5、交易系统

第三方交易系统,金融服务行业的一大部分,同样也是使用Java编写的。例如像Murex这种受欢迎的交易系统,运用于与许多的银行前端链接,同样也是用Java编写的。

6、J2MEApps

虽然IOS和Android的到来几乎扼杀了J2ME的市场,但是仍然有很多的低端诺基亚和三星手机在使用着J2ME。曾经有段时间大部分的游戏,手机应用都是利用MIDP和CLDC,或者J2ME部分平台编写的,以适用于Android系统。.J2ME依然在蓝光、磁卡、机顶盒等产品中流行着。app之所以如此流行是因为对于所有的诺基亚手机,app仍然适用于J2ME。

7、嵌入式领域

Java在嵌入式领域也有很大的应用。你只需要130KB就能够使用Java技术(在一块小的芯片或者传感器上),这显示了这个平台是多么的可靠。Java当初是为了嵌入式设备而设计的。事实上,这也是Java当初的一项“立即编写,随处运行”主旨的一部分。

8、大数据技术

Hadoop和其他的大数据技术也在不同程度使用着Java,例如Apache的基于Java的Hbase,Accumulo(开源),以及ElasticSearch。但是Java并没有占领整个领域,还有其他的大数据技术例如MongoDB就是使用C++编写的.如果Hadoopor和ElasticSearch逐渐发展,那么Java就能有潜力在大数据技术领域上得到更大的发展空间。

9、高频交易领域

Java平台已经大大提高了性能特点和JITS,并且Java也拥有像C++级别的传输性能。因此,Java也流行于编写高并发系统。虽然Java的传输性能不比C++,但你可以不用考虑Java的安全性,可移植性和可维护性等问题(Java内部已经实现好了),而且Java有着更快的运行速度。安全性等问题会使一个没有经验的C++程序员编写的应用程序变得更加缓慢和不可靠。

10、科学应用

现在Java经常是科学应用的默认选择,包括了自然语言处理。这主要的原因是因为Java比起C++或者其他语言有更加的安全,可移植,可维护,而且Java有着更好的高级并发工具。

其实不管是选择哪个领域只要自己技术够强高新就不是问题。

如何学习C语言

很多人对学习C语言感到无从下手,经常问我同一个问题:究竟怎样学习C语言? 我是一个教师,已经开发了很多年的程序,和很多刚刚起步的人一样,学习的第一个计算机语言就是C语言。 经过这些年的开发,我深深的体会到C语言对于一个程序设计人员多么的重要,如果不懂C语言,你想写底层程序这几乎听起来很可笑,不懂C语言,你想写出优秀高效的程序,这简直就是天方夜谭。 为什么C语言如此重要呢? 第一:C语言语法结构很简洁精妙,写出的程序也很高效,很便于描述算法,大多数的程序员愿意使用C语言去描述算法本身,所以,如果你想在程序设计方面有所建树,就必须去学它。 第二:C语言能够让你深入系统底层,你知道的操作系统,哪一个不是C语言写的?所有的windows,Unix,Linux,Mac,os/2,没有一个里外的,如果你不懂C语言,怎么可能深入到这些操作系统当中去呢?更不要说你去写它们的内核程序了。 第三:很多新型的语言都是衍生自C语言,C++,Java,C#,J#,perl...哪个不是呢?掌握了C语言,可以说你就掌握了很多门语言,经过简单的学习,你就可以用这些新型的语言去开发了,这个再一次验证了C语言是程序设计的重要基础。 还有啊,多说一点:即使现在招聘程序员,考试都是考C语言,你想加入it行业,那么就一定要掌握好C语言。 那么究竟怎样学习C语言呢? 1:工欲善其事,必先利其器这里介绍几个学习C语言必备的东东:一个开发环境,例如turbo C 2.0,这个曾经占据了DOS时代开发程序的大半个江山。 但是现在windows时代,用turbo C有感觉不方面,编辑程序起来很吃力,并且拖放,更没有函数变量自动感应功能,查询参考资料也不方便。 建议使用Visual C++,这个东西虽然比较大块头,但是一旦安装好了,用起来很方便。 一本学习教程,现在C语言教材多如牛毛,但推荐大家使用《C语言程序设计》谭浩强主编 第二版 清华大学出版社,此书编写的很适合初学者,并且内容也很精到。 除此以外,现在有很多辅助学习的软件,毕竟现在是Window时代了,学习软件多如牛毛,不象我们当初学习,只有读书做题这么老套。 我向大家推荐一个“集成学习环境(C语言)”,里边的知识点总结和例程讲解都非常好,还有题库测试环境,据说有好几千题,甚至还有一个windows下的trubo C,初学者甚至不用装其它的编译器,就可以练习编程了,非常适合初学者。 还有一个“C语言学习系统”软件,不过感觉只是一个题库系统,如果你觉得题做的不够,不妨也可以试试。 2:葵花宝典学习计算机语言最好的方法是什么?答曰:读程序。 没错,读程序是学习C语言入门最快,也是最好的方法。 如同我,现在学习新的J#,C#等其他语言,不再是抱着书本逐行啃,而是学习它们的例程。 当然,对于没有学过任何计算机语言的初学者,最好还是先阅读教程,学习完每一章,都要认真体会这一章的所有概念,然后不放过这一章中提到的所有例程,然后仔细研读程序,直到每一行都理解了,然后找几个编程题目,最好是和例程类似的或一样的,自己试图写出这段已经读懂的程序,不要以为例程你已经读懂了,你就可以写出和它一样的程序,绝对不一定,不相信你就试一试吧,如果写不出来,也不要着急,回过头来再继续研究例程,想想自己为什么写不出来,然后再去写这段程序,反反复复,直到你手到擒来为止,祝贺你,你快入门了。 3:登峰造极写程序的最高境界其实就是掌握各种解决问题的手段(数据结构)和解决问题的方法(算法)。 是不是写出底层程序就是程序设计高手呢?非也,写底层程序,无非是掌握了硬件的结构,况且硬件和硬件还不一样,要给一个芯片写驱动程序,无非就是掌握这块芯片的各种寄存器及其组合,然后写值读值,仅此而已。 这不过是熟悉一些io函数罢了。 那么怎样才算精通程序设计呢?怎样才能精通程序设计呢?举个例子:你面前有10个人,找出一个叫“张三”的人,你该怎么办?第一种方法:直接对这10个人问:“谁叫张三”。 第2种方法:你挨个去问“你是不是张三?”,直到问到的这个人就是张三。 第三方法:你去挨个问一个人“你认不认识张三,指给我看”。 不要小看这个问题,你说当然会选第一种方法,没错恭喜你答对了,因为这个方法最快,效率最高,但是在程序设计中找到解决问题的最优方法和你用的手段却是考验一个程序员程序设计水平的重要标志,而且是不容易达到的。 刚才这个问题类似于数据结构和算法中的:Map数据结构,穷举查找和折半查找。 所以掌握好数据结构和一些常用算法,是登峰造极的必然之路。 最后给大家推荐严尉敏的《数据结构》清华大学出版社,希望每一个想成为程序设计高 手的人研读此书。 [编辑:赵晋军] 二,语言学习方法 谈谈偶的学习方法,抛砖引玉! 学习不论讲不讲方法,最终都能学会。 但是别人1个月学会了,而你却100年才学会,这不就晚了么?:)所以说,学习还是要讲究方法的。 学习方法正确,事半功倍;学习方法不正确,事倍而功半。 什么才是学习C语言的捷径?我的答案是看书。 书中所写,是前人数十年经验所写,看十本书,就相当于汲取了前人数十年的功力,那么你的内功也会迅速上升1甲子。 :)书当然要看好书,只有好书才营养丰富。 假如你花了1天时间看了一本破书,而该书介绍的知识虽然对于你来说是全新的知识,但是由于书中组织不当、或者深度不够,使你获取的营养很少,还不如自己研究一天来的快,这种书就不值当看了。 学习C语言要看那些好书?我认为首先要把基础书给看扎实了,比如《C语言之四书五经》中介绍的4本。 (虽然这些书很多已经绝版了,但我相信电子版也是很有益处。 况且,如果你真的想看,我相信你一定有办法搞的到。 )这些书你会在很短的时间内看完(比如一两个月),这取决于你的基础和悟性。 之后要看那些书呢?我不妨再列几本。 Bjarne Stroustrup的《C++程序设计语言》theC++Programming Language)一定要看,这本书里面对于C的一些基础概念的定义,比我见过的其他任何C语言书都要全,都要仔细;Bjarne Stroustrup的《C++语言的设计与演化》(The Design and Evolution of C++)和David 的《C语言接口与实现 创建可重用软件的技术》(C Interfaces and Implaementations Techniques for Creating Reusable Software)一定要看,这两本书讲述了如何用C来实现异常处理、实现类型的封装和扩展等一些大的项目中经常用到的高级技术。 其他的书,操作系统的要看,编译原理的要看,算法的要看,模式的也要看。 读书破万卷,coding如有神。 总而言之,就如《传》中云:“生而知之者,上也;学而知之者,次也;困而学之又其次也。 ”我们不能总是因困而学之,而要做到兵马未动,粮草先行。 看书是学习的导向,书中能一一介绍清楚概念,但书却不能把应用的细节一一介绍给你,因为应用总是招数繁复,变化多端。 因此我们要想熟悉招数,懂得书中所讲怎么使用,还要多读源码。 Linus给别人解答问题的时候,常说Read the fucking source code;候捷也在其文中提到“源码之前,了无秘密。 ”这就是大师的箴言呀。 源码就像是动画、就像是幻灯片,把书中的招式一一演练给你看。 可以说高手的经验大都是源自代码。 源码和书一样,也是要看好的,不要看差的。 在此,我推荐看Linux kernel source code 和 Linux tcp/ip source code。 这两套代码都是开源的,垂手可得。 此外,还可以配合着Andrew 的《操作系统的设计与实现》(Operating Systems:Design and Implementation)、毛德操 胡希明的《Linux内核 源代码情景分析》、Jonathan Corbet,Alessandro Rubini,Greg Kroah-Hartman合著的《Linux设备驱动程序》(Linux Device Driver,3e)、 Stevens《TCP/IP详解(3部)》 (TCP/IP Illustracted )、 Stevens《UNIX环境高级编程》(Advanced Programming in the UNIX Environment,新版增加了Linux kernel的内容)等书来看,方便的很。 当然程序不是看出来的,是写出来的。 我高中的时候每天坚持写6个小时程序,《数据结构》和排列组合、图论方面的习题反复做了N遍。 到现在虽然已经时隔五六年,很多内容早已淡忘掉,但却培养了我很强的编码能力和调试能力,直到现在还对我的工作有很大的帮助。

求助大侠!!!各大编程语言的主要应用领域,我是一名软件专业的学生,以后想从事互联网的开发。

Java的特点1.平台无关性平台无关性是指Java能运行于不同的平台。 Java引进虚拟机 原理,并运行于虚拟机,实现不同平台的Java接口之间。 使用Java编写的程序能在世界范围内共享。 Java的数据类型与 机器无关,Java虚拟机(Java Virtual Machine)是建立在硬件和操作系统之上,实现Java二进制代码的解释执行功能, 提供于不同平台的接口的。 2.安全性Java的编程类似C++,学习过C++的读者将很快掌握Java的精髓。 Java舍弃了C++的指针对存储器地址的直接操作,程序运行时,内存由操作系统分配,这样可以避免病毒通过指针侵入系统。 Java对程序提供了安全管理器,防止程序的非法访问。 3.面向对象Java吸取了C++面向对象的概念,将数据封装于类中,利用类的优点,实现了程序的简洁性和便于维护性。 类的封装性、继承性等有关对象的特性,使程序代码只需一次编译,然后通过上述特性反复利用。 程序员只需把主要精力用在类和接口的设计和应用上。 Java提供了众多的一般对象的类,通过继承即可使用父类的方法。 在Java中,类的继承关系是单一的非多重的,一个子类只有一个父类,子类的父类又有一个父类。 Java提供的Object类及其子类的继承关系如同一棵倒立的树形,根类为Object类,Object类功能强大,经常会使用到它及其它派生的子类。 4.分布式Java建立在扩展TCP/IP网络平台上。 库函数提供了用HTTP和FTP协议传送和接受信息的方法。 这使得程序员使用网络上的文件和使用本机文件一样容易。 5.健壮性Java致力于检查程序在编译和运行时的错误。 类型检查帮助检查出许多开发早期出现的错误。 Java自己操纵内存减少了内存出错的可能性。 Java还实现了真数组,避免了覆盖数据的可能,这些功能特征大大提高了开发Java应用程序的周期。 并且Java还提供了Null指针检测、数组边界检测、异常出口、Byte code校验等功能。 Java与C/C++语言Java提供了一个功能强大语言的所有功能,但几乎没有一点含混特征。 C++安全性不好,但C和C++被大家接受,所以Java设计成C++形式,让大家很容易学习。 Java去掉了C++语言中的指针运算、结构、typedefs、#define、需要释放内存等功能,减少了平常出错的50%,让Java的语言功能很精炼。 而且,因为Java很小,所以整个解释器只需215K的RAM,并增加了一些很有用的功能,如自动收集碎片。 Java实现了C++的基本面象对象技术并有一些增强,(为了语言简单,删除了一些功能)。 Java处理数据方式和用对象接口处理对象数据方式一样。 Java与C和C++直接相关继承了C的语法,Java 的对象模型是从C++改编而来的.现代程序设计始于C,而后过渡到C++,现在则是JAVA.通过大量的继承,JAVA提供了一个强大的,可以更好地利用已有成果的,逻辑一致的程序设计环境,并且增加了在线环境需求的新功能.或许最重要的一点在于,由于它们的相似性,C,C++和JAVA为专业程序员定义了一个统一的概念架构.程序员从其中的一种语言转到另一种语言时,不会遇到太大的困难软件Qt 是一个跨平台的 C++ 图形用户界面库,由挪威 TrollTech 公司于1995年底出品。 Trolltech 公司在 1994 年成立,但是在 1992 年,成立 Trolltech 公司的那批程序员 就已经开始设计 Qt 了,Qt 的第一个商业版本于 1995 年推出然后 Qt 的发展就很快了,下面是 Qt 发展史上的一 些里程碑:* 1996 Oct KDE 组织成立* 1998 Apr 05 Trolltech 的程序员在 5 天之内将 Netscape5.0 从 Motif 移植到 Qt 上* 1998 Apr 08 KDE Free Qt 基金会成立* 1998 Jul 09 Qt 1.40 发布* 1998 Jul 12 KDE 1.0 发布* 1999 Mar 04 QPL 1.0 发布* 1999 Mar 12 Qt 1.44 发布* 1999 Jun 25 Qt 2.0 发布* 1999 Sep 13 KDE 1.1.2 发布* 2000 Mar 20 嵌入式 Qt 发布* 2000 Sep 06 Qt 2.2 发布* 2000 Oct 05 Qt 2.2.1 发布* 2000 Oct 30 Qt/Embedded 开始使用 GPL 宣言* 2000 Sep 04 Qt free edition 开始使用 GPL自从1996年早些时候,Qt进入商业领域,它已经成为全世界范围内数千种成功的应用程序的基础。 Qt也是流行的Linux桌面环境KDE 的基础,KDE是所有主要的Linux发行版的一个标准组件。 基本上,Qt 同 X Window 上的 Motif,Openwin,GTK 等图形界 面库和 Windows 平台上的 MFC,OWL,VCL,ATL 是同类型的东西,但是 Qt 具有下列优点:1. 优良的跨平台特性:Qt支持下列操作系统: Microsoft Windows 95/98, Microsoft Windows NT, Linux, Solaris, SunOS, HP-UX, Digital UNIX (OSF/1, Tru64), Irix, FreeBSD, BSD/OS, SCO, AIX, OS390,QNX 等等。 2. 面向对象Qt 的良好封装机制使得 Qt 的模块化程度非常高,可重用性较好,对于用户开发来说是非常 方便的。 Qt 提供了一种称为 signals/slots 的安全类型来替代 callback,这使得各个元件 之间的协同工作变得十分简单。 3. 丰富的 APIQt 包括多达 250 个以上的 C++ 类,还替供基于模板的 collections, serialization, file, I/O device, directory management, date/time 类。 甚至还包括正则表达式的处理 功能。 4.支持 2D/3D 图形渲染,支持 OpenGL5.大量的开发文档 支持Qt支持下述平台:MS/Windows - 95、98、NT 4.0、ME、2000、XP 、 Vista和Win7Unix/X11 - Linux、Sun Solaris、HP-UX、Compaq Tru64 UNIX、IBM AIX、SGI IRIX和其它很多X11平台Macintosh - Mac OS XEmbedded - 有帧缓冲(framebuffer)支持的Linux平台,Windows CE。 Symbian/S60 - 目前已经可以提供技术预览版本2008年1月31日,Nokia公司宣布通过公开竞购的方式收购TrollTech公司,旗下包括Qt在内的技术都归入Nokia旗下。 并且Nokia针对自己的移动设备平台规划的需要,将Qt按不同的版本发行:Qt商业版 提供给商业软件开发。 它们提供传统商业软件发行版并且提供在协议有效期内的免费升级和技术支持服务。 Qt开源版是Qt仅仅为了开发自由和开放源码软件, 提供了和商业版本同样的功能。 GNU通用公共许可证下,它是免费的。 从2009年3月发布的Qt 4.5 起,诺基亚将为Qt增添新的开源LGPL授权选择。 关于如何正确的选择这三种授权协议,可以阅读[1]。 从2009年5月11日起,诺基亚Qt Software 宣布 Qt源代码库面向公众开放,Qt 开发人员可通过为 Qt 以及与 Qt 相关的项目贡献代码、翻译、示例以及其他内容,协助引导和塑造 Qt未来的发展。 为了便于这些内容的管理,Qt Software 启用了基于 Git 和 Gitorious 开源项目的Web 源代码管理系统[2] 。 在推出开放式 Qt 代码库的同时,Qt Software 在其官方网站发布了其产品规划(Roadmap)。 其中概述了研发项目中的最新功能,展现了现阶段对 Qt 未来发展方向的观点,以期鼓励社区提供反馈和贡献代码,共同引导和塑造 Qt 的未来。

  • 声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
  • 本文地址:https://www.srwj168.com.cn/keji312/15125.html
国际人士称其 损人害己 美再演对华加征关税闹剧 尺素金声
新款丰田皇冠陆放售28.48 车机升级