2009-03-03 7 views
4

私の友人は、同社でERP PowerBuilderで書かれたソフトウェアを使用しています。残念ながら、(唯一の)開発者はすぐに退職する予定です。私の友人はソフトウェアを本当に好きで、少なくとも10年以上それを使い続けたいので、私の友人はソースコードを購入することに決めました。Javaプログラマー向けのPowerBuilder?

彼はソフトウェアを維持し、新しい機能を開発するためにビジネスを始めたいと考えています。現時点では、恐らく野生で約50台のソフトウェアがインストールされており、潜在的なバイヤーの束をすでに知っています。

彼は開発者を探していて、私に尋ねました...私は少しのC/C++プログラミング、VBのビットと他の言語の束をやったが、最後はJava Webアプリケーションを作成してお金を稼いだ。 私が読んだところから、PowerBuilderは私にとって古風なところがあります。そこにはチュートリアルはほとんどなく、オープンソースのフレームワーク、厄介なバージョン管理もなく、テストフレームワークについても読んでいません。 StackOverflowの人々は、言語/ IDEが死んでいることを希望していると言います。さらに、私が維持するコードは完全に文書化されておらず、テストされていません。

これまでPowerBuilderを聞いたことがない人にとって、このようなソフトウェアを維持することは可能でしょうか?

EDIT:ありがとう、あなたの答えに感謝します。私たちは古いアプリケーションを完全に追い払い、最新の言語で書き直すことにしました。

答えて

1

私はpowerbuilderのかなり前のバージョン、バージョン6.5 に非常に使いやすく、1つはVBと比較できます。 私は、アプリケーションを維持し、小さな修正を加えてシステムを強化するのはかなり簡単だと感じています。 Powerbuilderを使用していて、古いアプリケーションを維持している企業はかなりあります。

7

はい、可能です。 Powerbuilderは、特に既にVBを使用している場合は、特にハード言語ではありません。

Powerbuilderのコミュニティは、あなたが慣れ親しんできたコミュニティよりはるかに小さいです。 Javaが、存在します。質問するのに最適な場所(SO!以外)はsybase.public.powerbuilder.*ニュースグループです。

ユニットテストの場合は、PowerUnitを試してください。ソース管理には、,TamTam SVN SCC、またはPushOK SVN SCC proxyでSubversionを使用できます。

これは長い間ニッチな言葉になっています。私の意見では、これは必要なツールの初期費用のためであり、基本的に誰もそれを考慮しないようにしています。

Sybase is flourishingは、PowerBuilderにコミットし、C#やVB.NETのような完全な.NET言語になるバージョン12向けの進捗状況を定期的に発表し、an IDE based on VisualStudioと一緒に出荷されます。コードをバージョン12に直接移行することができます。書き換えは必要ありません。

+1

PB12に行くためのリファクタリングについてのコメントは知られていない、私は恐れている。リファクタリングを必要とするPB12には本質的なものはありません。私は、アプリケーションをWP12ターゲットのプレリリース版に移行しました。コードの変更は一切ありません。これは言うまでもありません。アプリでもサポートされていない機能が使用されている場合(たとえば、コマンドボタンを右クリックするなど)、変更は必要ありません。リファクタリングが新しい機能を活用する必要はないと言っているわけではありませんが、それはほぼすべての新機能を活用するのに当てはまります。 Sybaseには、PB12の価値についての良いウェブキャスト録音があります。 – Terry

2

はい、確かにPowerBuilderを学ぶことができます。あなたが質問したいだけなのかどうか、あなたは答えることができます。

PowerBuilderを何年も(バージョン4から9まで)使用しました。本当に好きな部分がありました。ビジネスアプリケーションを構築するには最適な方法です。これはオブジェクト指向で、データウィンドウはすばらしい技術です。

しかし、悪い点もあります。 IDEは古いものです。コードエディタは単純化されています(たとえば、コード補完なし)。ソース管理との統合は面倒であり、コミュニティはかなり小さいです。それはWindowsのみです。

マガジン(PowerBuilder Developer's Journal - SYSCON)がありますが、最近はかなり薄いです。 Sybaseには、PowerBuilderの将来のバージョン用に丁寧なものがあるようです。

個人的には、機会があれば私はそれに戻ってくることができたと私は十分気に入っていました。

6

はい、有能なプログラマー、それほど能力のないプログラマも、PowerBuilderを使用できます。しかし、私は以前の答えの1つにいくぶん反対します。これはpre -.Net VBとは異なる意味を持ちます:真のオブジェクト指向の原則(カプセル化、継承、包含的な多型[しかし、C#やJavaのようにインタフェースを介した操作可能な多型])をサポートしています。クラシックVBには継承がありませんでした。

Paul LefebvreとColin Pickardからの回答は間違いありません.PBは以前よりも多くのニッチ言語を使用していますが、実際には.Netの方向に動いています。ソース管理に関しては、PBはいくつかのインターフェースをサポートしています(私たちはVSSと共に使用します)が、私はColinの素晴らしいリンクのセットに感謝しています。

フレームワーク:最も一般的なものは、PowerBuilder Foundation Classです。これは、Sybaseが数年前にオープンソースとして公開したものです。

あなたに私の警告は次のとおりです。私は、人々が特にPBを書くために強いプログラマーである必要はなかったということを上に述べました。 PBは学ぶのは簡単ですが、マスターするには時間がかかります。 90年代後半にWindowsのアイコンをダブルクリックしてアプリを起動できる人は誰でもプログラマだと思っていたのが最大の日でした。本当にOOをサポートしているにもかかわらず、ほとんどのPBアプリはよく設計されておらず、よく書かれたアプリではありません。彼らは通常、ハックの仕事全体です(経験豊かな開発者がいないことや、非常に強力なツールであるPB自体ではなく、当時のソフトウェア開発の未熟さに対する批判)。真に管理しやすく管理しやすいコードベースを継承しているなら、あなたは少数です。 PBコードは、ほとんどの場合、レガシーコードとして分類できます。良いニュースは、たくさんの挑戦があるということです。リファクタリングの機会がたくさんあり、多くのプロダクションサポートがあります。

7

私はPowerBuilder開発者としてのキャリアをスタートしましたが、PBがほとんど死んだ言語になったとすぐに、すぐにJavaとPythonに変更されました。

また、「良いプラクティス」というプログラミングを適用するために使用できるツールがあるとしても、それらは広く知られておらず、やや高価なので、私はバージョンコントロールなしで作業しなければならなかった(!!)自動化されたテストまたは継続的な統合。

ほとんどの人が短期間でトレーニングをほとんど使わずに使えるアプリを作ることができる言語で、Javaとは対照的にアプリは本当に速く構築されています。開発者は生産性があり、それでもWebアプリの開発には時間がかかります。

しかし、払い戻しはメンテナンスであり、すぐに悪夢になります。データベース列の型変更のようなデータベースのわずかな変更でさえ、それを参照するすべてのデータウィンドウ(PBのユビキタスなデータアクセスコンポーネント)を破壊する可能性があります。

プログラミングの知識がほとんどなくてもほとんどの人がアプリケーションを開発できるので、アプリケーションの平均的な品質は非常に低く、管理不能なデータベース結合と悪いコーディング慣行に悩まされます。

お金がそれを正当化しない場合は、そのような種類の言語で開発者のキャリアを構築することはお勧めしません。その場合は、言語とともに古くなることのない「計画b」として代替技術を習得してください。

そして、この種の言語はそれを助けないので、コーディングと問題解決のスキルを「良好な状態」に保つよう常に努力します。

3

私はPBが優れたRADツールの1つだと思うし、来年に予定されている新しいバージョンのPB12は、Visual StudioのVSShellを新しいIDE(Intellisense等)。私は現在、コンパイラチームが、Delegate、インターフェイス、属性などC#からPowerScriptにすべての.NET機能を追加していますが、使用する言語を簡単に保つことは忙しいです。 PBは古いバージョンから新しいバージョンへの移行を可能にする数少ない開発プラットフォームの1つでもあり、新しいPB12も例外ではありません。 PB12によって生成されるアプリケーションは、ポストPB12のためにWPFとそれ以降のSilverlightを使用して近代的に見えるので、私はかなり興奮しています。私はPB開発者そのものではありませんが(C++)、C/Sアプリケーションを速く生産することはまだ難しいと思います。

3

元のアプリケーションの技術的品質によっては、別の言語に移行することが可能であるかどうかによって異なります。

「PB IS GOOOD」を読む前に:私は93年からPowerBuilderの開発者です。 PowerBuilderは非常に生き生きとしています。はい、たくさんの人が千年後すぐに言語を離れましたが、かなりの数の人が後で戻ってきました。いいえ、私はPBを売るお金を稼ぐことはできません!

PowerBuilderアプリケーションと他のツールとの最も大きな違いは、データウィンドウテクノロジです。知識のある開発者の手には、このような強力なツールです。例:INSERT/UPDATE/DELETEのための最適なSQLの動的作成。 DWバッファ内のデータを使用して、すべてのプロパティの近くにある式を使用できます。 DropDown DWはとてもクールです。 DWと残りのPBは本当にDBMSに依存しません!

データ補完の多くは、とにかく4つの関数呼び出ししか必要としないときに、コード補完はどれくらい重要ですか?

  • は、DB >> dwData.Update(真、偽)
  • にDBの
  • はDBからの全てのデータを読む>> dwData.SetTransObject(SQLCA)接続>> dwData.Retrieve()
  • 書き込みデータを定義します
  • >> dwData.ResetUpdate()

私賭けたときにコミットリセット:元開発者が実際にデータウィンドウを活用する方法を知っていた場合 - あなたはJavaやC#への移行に作る任意の見積りも近いだろうものに来ることはありません実際に起こる。そうでない場合:アプリケーションは、新しいツールとは異なるデータバインディングを行う別のアプリケーションです。

PowerBuilderを使用しているときの緩みはありますか? 4GLとそのVMはそのまま設計されているので、VMのソースコードにアクセスすることはできませんので、独自のVMカスタマイズを行うことはできません。 NULLサポートをオフにして、速度を上げません。 VMのイベントマネージャを書き換えてイベントの順序を変更する必要はありません。 4GLは少ないコード行を意味します。データウィンドウは、LOCを大幅に削減します。 4GLはビットの微調整が少ないことを意味します。

/MicKr- BTW:PocketBuilderはWindows Mobile用のPBです - クールなアイデア!

+1

あなたの答えをありがとう!私たちはアプリケーションの書き直しを決定しましたが、主に文書化とテストの不足が原因です。私はコードを見て、それは混乱だった。私はPBにチャンスを与えたが、そのコードベースではなかった... – Olvagor

1

Powerbuilderは非常に簡単で、レポート、インターフェイス、フォームなどを作成するのに非常に役立つデータウィンドウオブジェクトがあります。

あなたはVisual Basicのを知っている場合、それは私が2ヶ月でのPowerBuilderを学んだ

容易になります。

powerbuilderの欠点はライセンスごとのコストです。

関連する問題