Introduction To Design Patterns In C
Mon, 08 Mar 2010 05:46:42 +0000
References Top
- (2005) Full-genome RNAi profiling of early embryogenesis in Caenorhabditis elegans. Nature 434: 462–469. Find this article online
- (2008) Whole genome functional analysis identifies novel components required for mitotic spindle integrity in human cells. Genome Biol 9: R44. Find this article online
- (2004) Parallel chemical genetic and genome-wide RNAi screens identify cytokinesis inhibitors and targets. PLoS Biology 2: e379. doi:10.1371/journal.pbio.0020379.
- (1992) Quantitative precision of an automated, fluorescence-based image cytometer. Anal Quant Cytol Histol 14: 187–202. Find this article online
- (2001) A neural network classifier capable of recognizing the patterns of all major subcellular structures in fluorescence microscope images of HeLa cells. Bioinformatics 17: 1213–1223. Find this article online
- (1988) A survey of thresholding techniques. Comput Vision Graph Image Process 41: 233–260. Find this article online
- (1979) A threshold selection method from gray-level histograms. IEEE Trans Syst Man Cybern 9: 62–66. Find this article online
- (1999) Segmentation of confocal microscope images of cell nuclei in thick tissue sections. J Microscopy 193: 212–226. Find this article online
- (2001) A comparison of methods for estimation of intensity nonuniformities in 2D and 3D microscope images of fluorescence stained cells. pp. 264–271.
- (2007) An interactive statistical image segmentation and visualization system. pp. 81–86. 10.1109/MEDIVIS.2007.5.
- (2006) Object-oriented image analysis for high content screening: detailed quantification of cells and sub cellular structures with the Cellenger software. Cytometry Part A 69A: 652–658. Find this article online
- (1972) Use of the Hough transformation to detect lines and curves in pictures. Comm ACM 15: 11–15. Find this article online
- (1992) The Hough transform for locating cell nuclei. Anal Quant Cytol Histol 14: 347–353. Find this article online
- (2006) Blood cell segmentation using minimum area watershed and circle radon transformations. pp. 441–454. 10.1007/1-4020-3443-1_40.
- (1998) Accuracy of least squares designed spatial FIR filters for segmentation of images of fluorescence stained cell nuclei. Cytometry Part A 25: 303–316. Find this article online
- (2008) Robust automatic segmentation of cell nucleus using multi-scale space level set method. Medical Imaging and Informatics. pp. 80–88. 10.1007/978-3-540-79490-5_12.
- (2006) Quantitative analysis of immunofluorescent retinal images. Proc Int Symp Biomed Imaging. pp. 1268–1271.
- (2004) Combining intensity, edge and shape information for 2D and 3D segmentation of cell nuclei in tissue sections. J Microscopy 215: 67–76. Find this article online
- (1998) Efficient, interactive, and three-dimensional segmentation of cell nuclei in thick tissue sections. Cytometry Part A 31: 275–286. Find this article online
- (1990) Morphological segmentation. J Vis Commun Image Represent 1: 21–46. Find this article online
- (2005) Voronoi-based segmentation of cells on image manifolds. pp. 535–543. 10.1007/11569541_54.
- (2003) A feature set for cytometry on digitized microscopic images. Analytical Cellular Pathology 25: 1–36. Find this article online
- (2007) Characteristics and value of directed algorithms in high content screening. Methods Mol Biol 356: 63–81. Find this article online
- (1998) Automated recognition of patterns characteristic of subcellular structures in fluorescence microscopy images. Cytometry 3: 366–375. Find this article online
- (2008) Time-lapse imaging. In: Wu Q, Merchant F, Castleman K, editors. Microscope Image Proecssing. Academic Press. pp. 401–440.
- (2007) Automated subcellular location determination and high-throughput microscopy. Developmental Cell 12: 7–16. Find this article online
- (2008) WND-CHARM: multi-purpose image classification using compound image transforms. Pattern Recognit Lett 29: 1684–1693. Find this article online
- (2007) Quantitative morphological signatures define local signaling networks regulating cell morphology. Science 316: 1753–1756. Find this article online
- (2006) Automated analysis of the mitotic phases of human cells in 3D fluorescence microscopy image sequences. pp. 840–848. 10.1007/11866565_103.
- (2009) Scoring diverse cellular morphologies in image-based screens with iterative feedback and machine learning. Proc Natl Acad Sci USA 106: 1826–1831. Find this article online
- (2009) Whole animal high-throughput screens: the C. elegans model. Methods Mol Biol 486: 57–75. Find this article online
- (2009) High-throughput screen for novel antimicrobials using a whole animal infection model. ACS Chemical Biology 4: 527–533. Find this article online
- (2008) CellProfiler Analyst: data exploration and analysis software for complex image-based screens. BMC Bioinformatics 9: 482. Find this article online
- (2009) Location proteomics: systematic determination of protein subcellular location. Methods in Molecular Biology, Systems Biology 500: 1–20. Find this article online
- (2008) An incremental approach to automated protein localisation. BMC Bioinformatics 9: 445. Find this article online
- (2008) Automated recognition system to classify subcellular protein localizations in images of different cell lines acquired by different imaging systems. Microsc Res Tech 71: 305–314. Find this article online
- (2007) Boosting multiclass learning with repeating codes and weak detectors for protein subcellular localization. Bioinformatics 23: 3374–3381. Find this article online
- (2007) Fast automated cell phenotype image classification. BMC Bioinformatics 8: 110. Find this article online
- (2006) Automated interpretation of subcellular patterns in fluorescence microscope images for location proteomics. Cytometry Part A 69A: 631–640. Find this article online
- (2007) Quantitative biological image analysis. Imaging Cellular and Molecular Biological Function. Berlin: Springer. pp. 45–70. 10.1007/978-3-540-71331-9.
- (2008) Bioimage informatics: a new area of engineering biology. Bioinformatics 24: 1827–1836. Find this article online
- (2006) Small molecule screening by imaging. Curr Opin Chem Biol 10: 232–237. Find this article online
- (2004) Systematic genome-wide screens of gene function. Nat Rev Genet 5: 11–22. Find this article online
- (2007) Image-based chemical screening. Nat Chem Biol 3: 461–465. Find this article online
- (2007) Applications of high-throughput RNA interference screens to problems in cell and developmental biology. Genetics 175: 7–16. Find this article online
- (2007) Utilizing RNA interference to enhance cancer drug discovery. Nat Rev Drug Discov 6: 556–68. Find this article online
- (2007) A pharmaceutical company user's perspective on the potential of high content screening in drug discovery. Methods Mol Biol 356: 19–31. Find this article online
- (2008) High-content analysis in neuroscience. Nat Rev Neurosci 779–788. Find this article online
- (2006) Cellular imaging in drug discovery. Nat Rev Drug Discov 5: 343–356. Find this article online
- (2007) Imaging in systems biology. Cell 130: 784–795. Find this article online
- (2006) Seeing is believing? A beginners' guide to practical pitfalls in image acquisition. J Cell Biol 172: 9–18. Find this article online
- (2006) An infrastructure for high-throughput microscopy: instrumentation, informatics, and integration. In: Inglese J, editor. Measuring Biological Responses with Automated Microscopy. Academic Press. pp. 484–512. 10.1016/S0076-6879(06)14026-4.
- (2009) Bioimage informatics for experimental biology. Annu Rev Biophys 38: 327–346. Find this article online
- (2008) Open file formats for high-content analysis. In: Haney S, editor. High Content Screening: Science, Techniques and Applications. Wiley. pp. 319–328. chapter 14.
- (2007) Visualization of biological data. In: Lengauer T, editor. Bioinformatics: From Genomes to Therapies. Wiley-VCH. pp. 1573–1626. volume 1: The Building Blocks: Molecular Sequences and Structures.
- (2008) A review of imaging techniques for systems biology. BMC Syst Biol 2: 74. Find this article online
- (2004) Survey over image thresholding techniques and quantitative performance evalution. J Electron Imaging 13: 146–165. Find this article online
- (2006) High-content screening: emerging hardware and software technologies. Methods Enzymol 414: 468–83. Find this article online
- (2001) Microarrays of cells expressing defined cDNAs. Nature 411: 107–110. Find this article online
- (2008) Particle tracking in 3D+t biological imaging. In: Rittscher J, Wong STC, Machiraju R, editors. Microscopic Image Analysis for Life Science Applications. Artech House. pp. 223–282. chapter 10.
- (2008) Comparison of single-particle analysis and electron tomography approaches: an overview. J Microscopy 232: 562–579. Find this article online
- (2008) Particle size determination using TEM: a discussion of image acquisition and analysis for the novice microscopist. Langmuir 24: 11350–11360. Find this article online
- (2008) Basic confocal microscopy. Curr Protoc Mol Biol 81: 14.11.1–14.11.18. Find this article online
- (2006) A guided tour into subcellular colocalization analysis in light microscopy. J Microscopy 224: 213–232. Find this article online
- (2008) Image acquisition for colocalization using optical microscopy. Am J Physiol Cell Physiol 294: C1119–C1122. Find this article online
- (2008) Spatial quantitative analysis of fluorescently labeled nuclear structures: problems, methods, pitfalls. Chromosome Res 16: 523–562. Find this article online
- (2008) The management of chemical and biological information. Curr Opin Drug Discov Devel 11: 299–300. Find this article online
- (2008) Microscopic image analysis for life science applications. Artech House.
- (2006) The image processing handbook. CRC Press. 5th edition.
- (1993) Digital image processing. Addison-Wesley.
- (2004) Image processing with ImageJ. Biophotonics International 11: 36–42. Find this article online
- (2006) CellProfiler: image analysis software for identifying and quantifying cell phenotypes. Genome Biol 7: R100. Find this article online
- (2007) CellProfiler: free, versatile software for automated biological image analysis. Biotechniques 42: 71–75. Find this article online
- (2007) The good, the bad, and the ugly. Nature 447: 138–140. Find this article online
- (2003) A simple technique for reducing edge effect in cell-based assays. J Biomol Screen 8: 566–570. Find this article online
- (2008) A decade of tissue microarrays: Progress in the discovery and validation of cancer biomarkers. J Clin Oncol 26: 5630–5637. Find this article online
- (2007) Fluorescence microscopy—avoiding the pitfalls. J Cell Sci 120: 1703–1705. Find this article online
- (2003) Informatics and quantitative analysis in biological imaging. Science 300: 100–102. Find this article online
- (2005) The Open Microscopy Environment (OME) data model and XML file: open tools for informatics and quantitative analysis in biological imaging. Genome Biol 6: R47. Find this article online
- (2006) A lentiviral RNAi library for human and mouse genes applied to an arrayed viral high-content screen. Cell 124: 1283–1298. Find this article online
I had no idea what the best way to do this was until I discovered the Decorator pattern on this site: http://blog.rampprojects.com/?p=188. That was my light bulb moment. I could use this pattern to create wrappers (ReportDecorator objects) that can decorate a blank cover page object (ReportComponent) with the individual sections that are required based on given criteria. In addition, I figured that instead of creating a default cover page class to derive from, I'll create default sections that can be derived from. For example, I can create multiple headers that would inherit from a default CoverPageHeader object, which is a ReportDecorator, which is a ReportComponent.
How do I select which header/section to use? I implemented a primitive form of Dependency Injection (also known as Inversion of Control), which I recently read about. I created a CoverPageConfigurator object that handles selecting the correct header/footer/section wrapper based on certain criteria. I have it return a ReportComponent object to leave things generic. So let's say I have a method CoverPageConfigurator.SelectHeader(...), then in there I have all the criteria that must be met in order to return CoverPageHeader1, CoverPageHeader2.... It acts like a middle man and offers loose coupling.
I don't think I've used any other design patterns at work. It's possible that I've used them without knowing it, but doubtful.
- Posted in Cd Cover Art Designers



