![](https://habrastorage.org/storage2/40b/e7d/50b/40be7d50b2ffa403ebf1a2ec4ac67397.png)
本日、[チーム] OS X用の新しいバージョンのエージェントを(チーム全体を代表して)皆様にご紹介します。 そして、これは単なるバグ修正とマイナーな改良のリリースではなく(その中には本当にたくさんあります)、新しいバージョンにはいくつかの本当に大きな新機能があります。
Agent for Macに関する最後の公開から1年以上が経過し、それ以降、ICQサポートおよびその他の改善を含む別のメジャーバージョンがリリースされました。
ところで、記事の最後には、技術的な詳細などがあります。
![](https://habrastorage.org/storage2/5ff/ae5/365/5ffae5365be6e573d007870a57ebb3f3.png)
はい、通話の現在の実装は理想とはほど遠いですが、モスクワはすぐに構築されたわけではありません。エージェントの改善に精力的に取り組んでいます。 一般的に、私たちは多くのことに取り組んでいますが、これについては改めてお話しします。
![](https://habrastorage.org/storage2/168/7dd/710/1687dd71065bebff254b36b52d10727a.png)
![](https://habrastorage.org/storage2/d42/2e5/db2/d422e5db2e74b2116ef5c34c5483f2c0.png)
機能番号2:シングルウィンドウインターフェイスを有効にする機能。 はい、はい、トレンドにあります。 =)
この機能は設定から利用でき、現在デフォルトでは無効になっています。 誰もがこのような傾向を好むわけではありませんが、たとえば、私はこの機能に非常に満足していますが、非常に欠けていました。
![](https://habrastorage.org/storage2/7ba/ed3/3f5/7baed33f5f3f25e012b397a7cf133cd9.png)
さて、 機能アドオン: OS X 10.8.0+の通知センターのサポート、今ではGrowlが通知の唯一のオプションではありません。 Growlは、システムの新しいバージョンに関与します。 また、誰もが通知センターを気に入っているわけではないため、10.8で問題なく設定できます。
![](https://habrastorage.org/storage2/ee1/3cb/b06/ee13cbb06232d4039c7571e1056ca7e2.png)
物事の順序で:安定性の一般的な改善、多数のバグの修正、インターフェースのいくつかの改善。
そして、もちろん、 変更されていない古い :メッセンジャー、マイクロブログ、メール通知、 無料のSMS 、複数のエージェントおよびICQアカウントの接続! そして、これはすべてバージョン10.6以降のMac OS Xで機能しており、今でも非常に人気があります。 残念ながら、エージェントは32ビットMacでは動作しませんが、これも修正可能です。
![](https://habrastorage.org/storage2/dba/875/507/dba8755073470d6d37346ea0bd648a4b.png)
agent.mail.ruプロジェクトの公式WebサイトまたはAppStoreでダウンロードできます。
今、いくつかの技術情報と将来の計画。 Agent for Macは現在、Objective-C / C ++の3人の開発者と1人のインターン(Lesha、こんにちは!)のチームによって開発されています。 それとは別に、VoIPライブラリを開発している人々が何人かいますが、すでにそれらについて書いています。
どうやら、このプロジェクトは以前は完全に外部委託されていましたが、今では最終的に開発がモスクワのオフィスに完全に移動したことに言及する価値があります。 アウトソーサーから来たコードは、予想どおり、 「code_ come from come from outsourcers 」 ™であり、1つのプロジェクトに同時に3つの製品が含まれていました。Agentfor iOS、Agent for Mac OS XおよびMail for iOS。 もちろん、これらの製品は「ブロック解除」され、さまざまな人々の手に渡されました。 多くはゼロから書き直され、多くはまだ書き直されています。
実際には、システムのコア(プロトコル部分)のアクティブな処理が進行中であり、新しいコアに完全に切り替える予定です(古いコアと同様にC ++で記述されていますが、より均一で、論理的で安定しています)、個人によっても記述されています(hello JasFこんにちはbronenos !)、チームは絡み合っており、時々非常に奇妙なタスクを私たちと共有していますが。 この新しいカーネルは元々iOSエージェント用に作成されましたが、最終的にはすべてのバージョンで同じになり、Windows、Android、Badaなどのポートが準備されます。 現在、AgentおよびICQのプロトコルが含まれていますが、他のプロトコルは後で追加されます。
しかし、古いプロジェクトではプロトコル部分だけが非常に悪かったわけではありません。 GUIは良くありませんでした。 どこでもObjective-C ++が使用され、C ++に適したプログラミングの考え方が使用されましたが、Objective-Cではうまく機能しませんでした。多くの場所で
std::vector delegates;
ようなものが見つかりました
std::vector delegates;
その他の真珠。 そして、新しいカーネルの機能を考慮に入れながら、可能な限り抽象化して、GUI全体をほぼ完全にゼロから書き直すという難しい決定が下されました。 近い将来、私たちは皆、完全に生まれ変わったエージェントを待っています! しかし、古いもののサポートをキャンセルした人はいません。現在のリリースのバグ修正は定期的に行われます(すでに行われています)。
ご清聴ありがとうございました。[Mac] OS XのエージェントとICQ開発チームがあなたと一緒にいました: silvansky 、 AlexChernyy 、 SClown 。