Framework Design Guidelines 3rd Edition Torrent

/ Comments off
Microsoft framework design guidelines

Framework Design Guidelines. 2 minutes to read.In this articleThis section provides guidelines for designing libraries that extend and interact with the.NET Framework. The goal is to help library designers ensure API consistency and ease of use by providing a unified programming model that is independent of the programming language used for development.

We recommend that you follow these design guidelines when developing classes and components that extend the.NET Framework. Inconsistent library design adversely affects developer productivity and discourages adoption.The guidelines are organized as simple recommendations prefixed with the terms Do, Consider, Avoid, and Do not. These guidelines are intended to help class library designers understand the trade-offs between different solutions. There might be situations where good library design requires that you violate these design guidelines. Such cases should be rare, and it is important that you have a clear and compelling reason for your decision.These guidelines are excerpted from the book Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable.NET Libraries, 2nd Edition, by Krzysztof Cwalina and Brad Abrams.

Ion Torrent Personal Genome Machine (PGM) technology is a mid-length read, low-cost and high-speed next-generation sequencing platform with a relatively high insertion and deletion (indel) error rate. A full systematic assessment of the effectiveness of various error correction algorithms in PGM viral datasets (e.g., hepatitis B virus (HBV)) has not been performed.

We examined 19 quality-trimmed PGM datasets for the HBV reverse transcriptase (RT) region and found a total error rate of 0.48% ± 0.12%. Deletion errors were clearly present at the ends of homopolymer runs.

Tests using both real and simulated data showed that the algorithms differed in their abilities to detect and correct errors and that the error rate and sequencing depth significantly affected the performance. Of the algorithms tested, Pollux showed a better overall performance but tended to over-correct ‘genuine’ substitution variants, whereas Fiona proved to be better at distinguishing these variants from sequencing errors. We found that the combined use of Pollux and Fiona gave the best results when error-correcting Ion Torrent PGM viral data. Next-generation sequencing (NGS) has been widely used in the study of viruses and has opened new avenues for research and diagnostic applications (e.g., viral mutant spectra, virus quasispecies theory and dynamics, fitness landscape, and discovery of novel viruses ). Ion Torrent Personal Genome Machine (PGM) technology is a mid-length read, low-cost and high-speed NGS platform with special applications in microbial sequencing. However, PGM has a relatively high insertion and deletion (indel) error rate of 1.5% (range from 0.46% to 2.4%).Several algorithms have been proposed to correct sequencing errors for PGM data (Table ). These algorithms differ with respect to error models, statistical techniques, data features, the determined parameters, and performances.

These methods are classified into the following three categories: (1) suffix array/tree-based methods that use a suffix tree to detect and correct substitution and indel errors (e.g., Fiona ); (2) k-spectrum-based methods that divide reads into k-mer lengths and generate a k-mer depth profile to correct the k-mer profile (e.g., Blue and Pollux ); and (3) multiple sequence alignment (MSA)-based methods that use k-mers as seeds and construct a consensus sequence from the multiple alignments to correct errors (e.g., Coral and Karect ). Two review articles, have systematically surveyed these methods for PGM data and provided guidance concerning which tools to consider for benchmarking based on the data properties.

Sequencing data generated in NGS platforms were analyzed in four microbial genomes to assess the coverage distribution, bias, GC distribution, variant detection and accuracy. However, these algorithms have not been fully assessed and applied to viral sequencing data (e.g., hepatitis B virus, HBV).

Movie

Framework Design Guidelines 3rd Edition Torrent Download

HBV has a partially double-stranded DNA genome, and its replication depends on reverse transcription of an RNA intermediate by reverse transcriptase (RT). Since the RT lacks proofreading, errors in HBV DNA replication occur at a relatively higher rate than other DNA viruses, with an estimated nucleotide substitution rate of 1.4–3.2 × 10 −5 substitutions per site per year.

Nucleos(t)ide analogs (NAs) have been widely used in anti-HBV therapy by directly inhibiting the HBV RT enzyme and effectively suppressing viral replication. However, long-term use of NAs leads to drug resistance. Characterizing the mutation spectrum and reconstructing the viral quasispecies in the HBV RT region has implications for understanding drug resistance due to NA therapy.

For example, various HBV quasispecies associated with drug resistance exist prior to treatment and increase in abundance following anti-viral therapy. Therefore, distinguishing true variants, especially low-frequency mutations, from sequencing errors is crucial for viral mutation-related studies, including quasispecies reconstruction, which is feasible only with the longer 454/Roche reads.In the present study, we investigated the performance of error correction algorithms in empirical and simulated PGM data for the HBV RT region. We have the following aims: 1) to characterize the error profiles of 19 quality-trimming PGM datasets for the HBV RT region; 2) to assess the error-correction performance of algorithms in empirical and simulated data under different models; and 3) to provide a benchmark for generating an analysis-ready alignment of PGM data for studies of viral sample sequencing. (1)where r i was the number of errors in each read ( i), nbase i was the total number of sequenced bases, and n was the total number of reads. For example, the deletion error rate in the homopolymers was calculated by dividing the total number of deletion errors by the total number of sequenced bases in the homopolymer region.

A homopolymer region was defined as a homopolymer repeat with a length ≥ hl, where 2 ≤ hl ≤5. This definition was established to ensure that indel errors, which were common on this platform, were truly reflected by the error rate.

To estimate the substitution error rate, we excluded the defined ‘genuine’ mutations (i.e., a variant with a frequency ≥0.5% based on the TEF file from the pre-corrected alignments), because Ion Torrent PGM could detect substitutions occurring at frequencies ≥0.1%.The cumulative distribution of errors in the sequencing reads after quality trimming indicated that 99.48% of the sequencing reads had ≤9 errors (Fig. ). We did not find any ‘true’ indels using Sanger sequencing; therefore, all indels can be considered errors. The distribution of homopolymers with different lengths (2 ≤ hl ≤5) in the HBV RT region (AB033556) is shown in Fig. We counted the numbers of each type of error in the homopolymer and non-homopolymer regions. Insertion and deletion errors occurred more frequently than substitution errors (Fig. ). Notably, deletion errors were more likely for homopolymers and were correlated with hl. When hl ≥ 4, the mean deletion error rate in the homopolymers was 0.59%, although the insertion error rate (0.27%) was more likely to be greater than the deletion error rate (0.13%) in the total sequenced regions.

As noted previously, PGM data were sensitive to homopolymers, and the indel error rate increased as hl increased,. We manually investigated the behaviors of these algorithms in correcting for insertion (blue arrow), deletion (red arrow) and substitution (green arrow) errors (Fig. ). We found that Pollux and Blue had a greater power for indel error correction but were unable to distinguish ‘genuine’ substitutions from errors. For example, at position 651 (a G → A Sanger-confirmed mutation), most of the mutated ‘A’ alleles (959 out of 7427) were falsely corrected by Pollux (956/959) and Blue (788/959) but not by Fiona, Coral and Karect. For the insertion errors between positions 762 and 763 (1,070 out of 7,208 sequencing reads), Pollux and Blue corrected 98.2% and 100% of the erroneous insertions, followed by Coral (25.3%), Fiona (1.3%) and Karect (0%). We noted similar behaviors of these algorithms for deletion error (e.g., at position 525) corrections. The ECE toolkit takes all bases differing from the reference as errors and counts all corrections changed to the reference as a TP, resulting in a bias in the calculation of these measures.

We set different frequency thresholds (0.1%, 0.5% and 1%) to distinguish ‘genuine’ substitutions and errors, because Ion Torrent PGM can detect substitutions occurring at frequencies ≥0.1% (i.e., a variant was considered to be ‘true’ if its frequency was greater than the cutoff). Based on the pre- and post-corrected TEF files, we counted the proportion of the identified ‘genuine’ mutations and the corrected errors under different algorithms (Fig. ). We calculated the proportion of the identified ‘genuine’ mutations by dividing the number of mutated alleles in the corrected reads by the number in the original reads.

Framework Design Guidelines Pdf

We found that Pollux and Blue over-corrected for ‘genuine’ substitutions with a higher frequency, whereas Karect and Coral had a lower power for error correction. Fiona corrected most of the substitution errors with frequencies.